cmake_minimum_required (VERSION 2.8) project (demo) set (EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin) add_compile_options(-std=c++11 -Wall) add_executable(main main.cpp) 6.1.3 运行查看 然后cd到build目录下,执行cmake … && make命令,就可以在bin目录下得到main的可执行文件 6.2 添加编译...
#define _TEST_FUNC_H_ void func(int data); #endif 修改main.c,调用testFunc.h里声明的函数func() #include <stdio.h> #include "testFunc.h" int main(void) { func(100); return 0; } 修改CMakeLists.txt,在add_executable的参数里把testFunc.c加进来 cmake_minimum_required (VERSION 2.8) pro...
配置文件 (config.h.in): #defineVERSION"@PROJECT_VERSION@" 在源文件中包含配置文件: #include"config.h" 4、生成自定义构建步骤 4.1 自定义命令 CMake 允许你添加自定义构建命令,以便在构建过程中执行额外的操作。 添加自定义命令: add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/generated_file.txt COMMAN...
cmake_minimum_required (VERSION 2.8) project (demo) set (EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin) add_compile_options(-std=c++11 -Wall) add_executable(main main.cpp) 6.1.3 运行查看 然后cd到build目录下,执行cmake … && make命令,就可以在bin目录下得到main的可执行文件 6.2 添加编译...
CMakeLists.txt: 将main.cpp加入工程; 然后查找并链接opencv库 # cmake needs this linecmake_minimum_required(VERSION3.1)# Define project nameproject(opencv_example_project)# Find OpenCV, you may need to set OpenCV_DIR variable# to the absolute path to the directory containing OpenCVConfig.cmake ...
1、首先用cmake_minimum_required (VERSION 3.14.1)指定所需cmake的最小版本。 2、project(name CXX C)指定工程名称,这个会影响PROJECT_SOURCE_DIR(第一个project所在的CMakelist.txt所在的文件的目录)的值 3、通用的属性可以放在单独的文件中如ToolChain.cmake,然后可以用include (ToolChain.cmake)等方式饱含。
configure_file(src/c/cmake_template_version.h.in"${PROJECT_SOURCE_DIR}/src/c/cmake_template_version.h") 假如cmake_template_version.h.in内容如下: #defineCMAKE_TEMPLATE_VERSION_MAJOR @CMakeTemplate_VERSION_MAJOR@#defineCMAKE_TEMPLATE_VERSION_MINOR @CMakeTemplate_VERSION_MINOR@#defineCMAKE_TEM...
add_library(common STATIC util.cpp) # 生成静态库 add_library(common SHARED util.cpp) # 生成动态库或共享库 add_library 默认生成是静态库,通过以上命令生成文件名字 1.在Linux下是: demo libcommon.a libcommon.so 2.在 Windows 下是: demo.exe ...
src目录包含另一个CMakeLists.txt文件以及.cpp实现文件:两个类和带有可执行程序入口点的主文件。CMakeLists.txt文件应该定义一个目标,使用这些源文件构建一个可执行文件——我们将在下一章学习如何做到这一点。 我们的头文件放在include目录中——这些文件被.cpp实现文件用来声明来自其他 C++翻译单元的符号。 我们有...
add_library(common STATIC util.cpp) # 生成静态库 add_library(common SHARED util.cpp) # 生成动态库或共享库 add_library 默认生成是静态库,通过以上命令生成文件名字 在Linux 下是: 复制 demo libcommon.a libcommon.so 1. 2. 3. 在Windows 下是: ...