Création hello world avec Cmake sur Vscode
Fermé
clement
-
24 oct. 2023 à 09:21
mamiemando Messages postés 33566 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 11 mars 2025 - 25 oct. 2023 à 19:16
mamiemando Messages postés 33566 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 11 mars 2025 - 25 oct. 2023 à 19:16
A voir également:
- Création hello world avec Cmake sur Vscode
- Dark world telechargement - Guide
- Creation compte gmail - Guide
- Création compte google - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation
- Création site web - Guide
1 réponse
mamiemando
Messages postés
33566
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
11 mars 2025
7 833
Modifié le 25 oct. 2023 à 19:19
Modifié le 25 oct. 2023 à 19:19
Bonjour,
Je n'ai pas tout compris, mais pour commencer as-tu lu ce tutoriel ?
Je ne sais pas dans quelle mesure ça répondra à ta question, mais à titre indicatif, voici ce que je fais pour un projet dont le code C++ est dans src/
./CMakeList.txt
cmake_minimum_required(VERSION 2.6) project(my_project) option(BUILD_DOCUMENTATION "Create and install the doxygen documentation" OFF) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -W -Wall") set(lib ${PROJECT_NAME}) set(inc_dir "${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}") set(lib_dir "${PROJECT_BINARY_DIR}/lib") set(src_dir "${PROJECT_SOURCE_DIR}/src") set(LIBRARY_OUTPUT_PATH ${lib_dir}/${CMAKE_BUILD_TYPE}) set(bin_dir "${PROJECT_BINARY_DIR}/bin") set(EXECUTABLE_OUTPUT_PATH ${bin_dir}/${CMAKE_BUILD_TYPE}) add_subdirectory(src)
./src/CMakeLists.txt
Ce fichier suppose que les sources (resp. headers) C++ sont suffixées ".cpp" (resp. .hpp")
cmake_minimum_required(VERSION 2.6) set(lib ${lib} PARENT_SCOPE) set(lib_dir ${lib_dir} PARENT_SCOPE) set(src_dir ${src_dir} PARENT_SCOPE) set(inc_dir ${inc_dir} PARENT_SCOPE) set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} PARENT_SCOPE) set(LIBRARY_OUTPUT_PATH ${LIBRARY_OUTPUT_PATH} PARENT_SCOPE) #include(FindBoost) #find_package(Boost 1.36.0 REQUIRED graph) #link_directories(${Boost_LIBRARY_DIRS}) #include_directories(${Boost_INCLUDE_DIRS}) set(LIB_VERSION_MINOR 1) set(LIB_VERSION_MAJOR 0) configure_file( "${src_dir}/config.h.in" "${src_dir}/config.h" ) file(GLOB_RECURSE lib_cpps "${src_dir}/*.cpp") file(GLOB_RECURSE lib_hpps "${src_dir}/*.hpp") include_directories ("${src_dir}") add_library(${lib} SHARED ${lib_cpps}) install(TARGETS ${lib} DESTINATION ${LIBRARY_OUTPUT_PATH}) install(FILES ${lib_hpps} DESTINATION ${inc_dir})
src/config.h.in
#define LIB_VERSION_MAJOR @LIB_VERSION_MAJOR@ #define LIB_VERSION_MINOR @LIB_VERSION_MINOR@
Bonne chance