cmake的install命令学习

转自:https://blog.csdn.net/qq_38410730/article/details/102837401

1.install命令

install用于指定在安装时运行的规则。它可以用来安装很多内容,可以包括目标二进制、动态库、静态库以及文件、目录、脚本等:

install(TARGETS <target>... [...])
install(DIRECTORY <dir>... [...])

 通过,设置CMAKE_INSTALL_PREFIX变量,可以指定cmake install时的相对地址前缀。

set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR})

2. 目标文件安装target 

例子:

INSTALL(TARGETS myrun mylib mystaticlib
       RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
       LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
       ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
)

可执行二进制myrun安装到${CMAKE_INSTALL_BINDIR}目录,动态库libmylib.so安装到${CMAKE_INSTALL_LIBDIR}目录,静态库libmystaticlib.a安装到${CMAKE_INSTALL_LIBDIR}目录。

其中runtime、library、archive如下:

 例如:

install(TARGETS ${BIN_NAME} RUNTIME DESTINATION output/bin)

将二进制可执行文件,添加到output/bin目录下。

//所以这里的“安装”,install这个说法,倒觉得有点不是很准确,倒是和复制比较类似。

3.目录安装

install(DIRECTORY conf/ DESTINATION output/conf)

将conf/目录安装到output/conf目录,

 

posted @   lypbendlf  阅读(4815)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
历史上的今天:
2018-08-28 1107 Social Clusters[并查集][难]
2018-08-28 PAT 1102 Invert a Binary Tree[比较简单]
2018-08-28 1124 Raffle for Weibo Followers[简单]
2018-08-28 PAT 1112 Stucked Keyboard[比较]
点击右上角即可分享
微信分享提示