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)等方式饱含。
4、set(CMAKE_VERBOSE_MAKEFILE ON/OFF)用于开关编译时的详细信息打印
5、常用变量:
指定编译选项
CMAKE_C_FLAGS : 指定gcc编译选项,如-02 ,-g,当然也可用通过add_definitions设置。
CMAKE_CXX_FLAGS:指定g++编译选项。
CMAKE_C_FLAGS_DEBUG:指定debug版本编译选项
指定链接选项
CMAKE_EXE_LINKER_FLAGS
CMAKE_MODILE_LINKER_FLAGS
CMAKE_SHARED_LINKER_FLAGS
CMAKE_STATIC_LINKER_FLAGS
指定编译器
CMAKE_C_COMPILER:指定C编译器,如gcc
CMAKE_CXX_COMPILER:指定C++编译器,如g++
BUILD_SHARED_LIBS:指定默认生成库文件类型,on:动态库,off 静态
CMAKE_BUILD_TYPE:设置编译类型,如Debug、Release
指定RPATH相关选项,如果为true,则关闭rpath功能
CMAKE_SKIP_RPATH;构建和安装期间
CMAKE_SKIP_BUILD_RPATH:构建期间
CMKAE_INSTALL_RPATH:安装期间
6、指定编译输出路径
set(LIBRARY_OUTPUT_PATH, $(PROJECT_SOURCE_DIR}/output) 指定库文件输出路径
set(EXEC_OUTPUT_PATH, $(PROJECT_SOURCE_DIR}/output) 指定可执行文件输出路径
LIBRARY_OUTPUT_PATH
添加依赖:
include_directories:添加头文件搜索路径,相当于-I
link_directories添加库文件搜索路径,相当于-L
add_subdirectory(src):添加子目录
add_executable(name, $(sourcefile)):指定编译文件,编译可执行程序
add_libarary(name,SHARED,$(sourcefile)):指定编译文件,编译库文件
target_link_libraried(name,$(dependlibs))添加依赖的库文件,相当于-l
link_libraries("/opt/MATLAB/R2012a/bin/glnxa64/libeng.so")添加依赖库文件,相当于-I, 需要全路径,并且只能用于add_executable之前。
7、其他
message(status,"message ${xx}); 打印信息
file(MAKE_DIRECTORY xxx)创建文件
————————————————
版权声明:本文为CSDN博主「mby1988」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/mby1988/article/details/121706937