Skip to content

πŸš€ Educational C++ project that demonstrates how to structure and compile code with Meson, Ninja, and Clang. Part of the DIBS course. Scripts included for Windows, macOS, and Linux.

License

Notifications You must be signed in to change notification settings

r8vnhill/echo-app-cpp-meson

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

echo-app-cpp-meson

License: BSD-2-Clause Build System: Meson Language: C++ Lesson Available (Spanish)

This repository accompanies the lesson Creando un Proyecto BΓ‘sico en C++ con Meson, part of the DIBS course (DiseΓ±o e ImplementaciΓ³n de Bibliotecas de Software).

🧠 Note: The lesson is written in Spanish, but this repository and its source code are documented in English to make the content more accessible to an international audience.

πŸš€ What does this project demonstrate?

This is a minimal but well-structured example that shows how to:

  • Create a basic C++ project using the Meson build system.
  • Set up a clean project structure with root-level and src/ directory configurations.
  • Automate the creation of essential project files using shell and PowerShell scripts.
  • Build and run the project with Meson, Ninja, and Clang.
  • Apply best practices for portable, modular, and maintainable software libraries.

πŸ“‚ Project structure

echo-app-cpp-meson/
β”œβ”€β”€ meson.build
└── src/
    β”œβ”€β”€ meson.build
    └── main.cpp

Each meson.build file corresponds to its directory's role in the build process, enabling modular compilation as the project scales.

πŸ› οΈ Dependencies

To compile and run this project, you need:

The lesson includes helper scripts to install these tools automatically for Windows, macOS, and Debian/Ubuntu.

πŸ§ͺ How to build and run

meson setup build
meson compile -C build
./build/src/main

Expected output:

Nothing can happen till you swing the bat

πŸ“š Related lesson

For a full walkthrough, check the companion lesson (in Spanish):

πŸ‘‰ Creando un Proyecto BΓ‘sico en C++ con Meson

It covers:

  • Installing Meson, Ninja, and Clang
  • Creating a project structure
  • Configuring meson.build files
  • Automating boilerplate setup
  • Reflections on software library maintainability

🀝 Code of Conduct

This project follows the Contributor Covenant to foster a welcoming and inclusive environment. Please read CODE_OF_CONDUCT.md for details.

βš–οΈ License

This project is licensed under the BSD 2-Clause License.

You are free to use, modify, and distribute the code with minimal restrictions. See the license file for full terms.

About

πŸš€ Educational C++ project that demonstrates how to structure and compile code with Meson, Ninja, and Clang. Part of the DIBS course. Scripts included for Windows, macOS, and Linux.

Topics

Resources

License

Stars

Watchers

Forks