cmake 常用命令记录

cmake 常用命令记录,第1张

本文用于记录工作中遇到的cmake命令,依据实际案例分析,不一定全,会不断补充。

include

该命令用来载入并运行来自于文件或模块的CMake代码。

include(${CMAKE_CURRENT_LIST_DIR}/../cmake/cross-toolchain.cmake)

该例子表示加载当前目录的父级目录下/cmake/cross-toolchain.cmake文件。
${CMAKE_CURRENT_LIST_DIR} :当前正在处理的列表文件的完整目录。

include指令一般用于语句的复用。如果有一些语句需要在很多CMakeLists.txt文件中使用,为避免重复编写,可以将其写在.cmake文件中,然后在需要的CMakeLists.txt文件中进行include *** 作就行了。

.cmake文件里包含了一些cmake命令和一些宏/函数,当CMakeLists.txt包含该.cmake文件时,当编译运行时,该.cmake里的一些命令就会在该包含处得到执行,并且在包含以后的地方能够调用该.cmake里的一些宏和函数。

add_subdirectory

该命令用来添加一个子目录并构建该子目录。

add_subdirectory(src)

该例子告诉CMake去src目录中查看可用的CMakeLists.txt文件。

find_package

该命令用于查找并引入外部依赖包。

find_package(BOOST)

引入Boost库。

include_directories

将给定的目录添加到编译器用来搜索头文件的目录中。

include_directories(${BOOST_INCLUDE_DIR})

将Boost库头文件所在目录添加到编译器用来搜索头文件的目录中。

aux_source_directory

查找并搜集所有在指定路径下的源文件的文件名,并将输出结果列表储存在指定的变量中。

aux_source_directory(../../datapool/src SRC_DATAPOOL)

将…/…/datapool/src下所有源文件名存储到SRC_DATAPOOL中,便于add_executable(main ${SRC_DATAPOOL})使用。

add_executable

使用指定的源文件来生成目标可执行文件。

add_executable(main ${SRC} ${SRC_DATAPOOL})

使用${SRC} ${SRC_DATAPOOL}代表的文件名生成main可执行文件。

target_link_libraries

该指令的作用为将目标文件与库文件进行链接。

target_link_libraries(main ${BOOST_LIBRARIES})

将目标文件main与boost库的${BOOST_LIBRARIES}链接。

install

用于定义安装规则,安装的内容可以包括目标二进制、动态库、静态库以及文件、目录、脚本等。

install(TARGETS main 
		RUNTIME DESTINATION bin)

安装目标(TARGET):main
RUNTIME:可执行二进制文件;
DESTINATION:指定磁盘上要安装文件的目录;
将可执行二进制文件main安装到bin目录中

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/713752.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-24
下一篇 2022-04-24

发表评论

登录后才能评论

评论列表(0条)

保存