cmake_minimum_required(VERSION2.8)project(cmaketest)#set(CMAKE_CXX_COMPILER "g++")add_compile_options(-std=c++11-w)#add_definitions(-std=c++11)build_command(BUILD_COMMAND_LINE CONFIGURATION ${CMAKE_BUILD_TYPE} PROJECT_NAME cmaketest TARGET all)message("build command:${BUILD_COMMAND_LINE}")...
Adds definitions to the compiler command line for targets in the current directory and below (whether added before or after this command is invoked). This command can be used to add any flags, but it is intended to add preprocessor definitions (see the add_compile_options() command to add ...
CMAKE_MINIMUM_REQUIRED(VERSION 3.22) PROJECT(compiler_options) ADD_COMPILE_DEFINITIONS(DEBUG_MODE) GET_PROPERTY(defs DIRECTORY PROPERTY COMPILE_DEFINITIONS) MESSAGE("Compile definitions: ${defs}") ADD_EXECUTABLE(main main.cpp) 运行cmake .命令,得到的输出如下: ...
@@ -9,11 +9,16 @@ unset(compile_definitions) # Add the following build specifications here, since these seem to be dependent # on config values on the root Kconfig. if(CONFIG_COMPILER_OPTIMIZATION_LEVEL_RELEASE) if(CONFIG_COMPILER_OPTIMIZATION_SIZE) list(APPEND compile_options "-Os") list...
@@ -9,11 +9,16 @@ unset(compile_definitions) # Add the following build specifications here, since these seem to be dependent # on config values on the root Kconfig. if(CONFIG_COMPILER_OPTIMIZATION_LEVEL_RELEASE) if(CONFIG_COMPILER_OPTIMIZATION_SIZE) list(APPEND compile_options "-Os") list...
add_compile_options(-wall -std=c++11 -o2) 1. 2. add_definitions() 功能:向C/C++编译器添加编译选项 -D。 语法:add_definitions(-DENABLE_DEBUG -DABC),参数之间用空格分隔。 #ifdef ENABLE_DEBUG ... #endif 1. 2. 3. add_dependencies() ...
add_custom_target添加一个构建目标。 add_definitions添加宏定义。 add_dependencies添加target的依赖。 add_executable添加构建二进制执行。 add_library添加构建lib库。 add_subdirectory添加构建的二级目录,一般在top的CMakeLists.txt中使用,用于将其他CMakeLists.txt包含进build工程,使用相对目录。
-DCMAKE_<LANG>_COMPILER=clang:用于指定语言编译器,默认由 cmake 搜索指定,如:-DCMAKE_CXX_COMPILER=clang++。一般来说,CMAKE_C_COMPILER和CMAKE_CXX_COMPILER分别指定 C 和 C++的编译器,如修改则需要同时指定 -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake:用于指定交叉编译工具链,一般用于非本地平台编译,如Andr...
CMAKE_MINIMUM_REQUIRED(VERSION 3.22) PROJECT(compiler_options) ADD_LIBRARY(test test.cpp) # 为test增加预编译选项 TARGET_COMPILE_DEFINITIONS(test PRIVATE PRIVATE_PRINT PUBLIC PUBLIC_PRINT INTERFACE INTERFACE_TEST_DEF) ADD_EXECUTABLE(main main.cpp) TARGET_COMPILE_DEFINITIONS(main PUBLIC DEBUG_PRINT) TA...
CMAKE_C_COMPILER、CMAKE_CXX_COMPILER:C和C++的交叉编译器的路径。 CMAKE_FIND_ROOT_PATH:在查找库和头文件时,CMake应该查找的路径。 通过设置这些变量,我们可以告诉CMake我们要编译的目标平台是什么,以及应该使用哪些工具进行编译。 1.2.3 处理平台相关的代码 ...