El objetivo de este repo es proporcionar ejemplos sencillos para comprender los fundamentos más elementales relacionados con la compilación en C++.
En todos los ejemplos proporcionados, se incluye un fichero README en el que se explican los pasos a seguir para la compilación. Además, cada ejemplo contiene un script de bash para ejecutar los comandos de forma automática ejecutando:
# Damos permisos de ejecución
chmod +x compile.sh
# Ejecutamos el script
./compile.sh
Este script es el mismo que ejecuta el CI en Github Actions para verificar que lo subido funciona correctamente.
- Compilación de un fichero fuente paso a paso
- Compilación de un módulo usado en main
- Compilación de un módulo usado en main con Makefile
- Compilación de un módulo usado en main con CMake
- Compilación de varios módulos usados en main con CMake y tests
- Creación de una librería estática
- Creación de una librería dinámica
- Creación de una librería dinámica con SONAME
- Creación de ejemplo para librería dinámica con soname
- Mejorar ejemplos testing
- Completar y mejorar .gitignore
- Incluir en todos los ejemplos estructura coherente de proyecto (src, build, include, tests...)
- Incluir diagrama explicando brevemente el flujo de compilación completo
- Añadir linter
- https://renenyffenegger.ch/notes/development/languages/C-C-plus-plus/GCC/create-libraries/index
- https://access.redhat.com/documentation/es-es/red_hat_enterprise_linux/8/html/developing_c_and_cpp_applications_in_rhel_8/the-soname-mechanism_creating-libraries-with-gcc
- https://www.youtube.com/watch?v=NEBRJth_NXE&list=PLgnQpQtFTOGRv7VS6fYerEbT4ckBovKur
- https://www.tenouk.com/ModuleW.html
- https://en.cppreference.com/w/cpp/preprocessor
- https://www.toptal.com/c-plus-plus/c-plus-plus-understanding-compilation