Cmake常用基本命令复习
1.基本命令
1. cmake_minimum_required(VERSION 2.8) ///检查cmake的版本,至少为2.8
2. PROJECT(helloworld) ///工程名为helloworld
# 通过在主工程文件CMakeLists.txt中修改ADD_SUBDIRECTORY (lib) 指令来指定一个编译输出位置;# 指定本工程中静态库libhello.so生成的位置,即 build/lib;ADD_SUBDIRECTORY(lib)
3. aux_source_directory(. SRC_LIST) ///查找当前目录下所有的源文件并保存到SRC_LIST变量中
4.INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include ${PROJECT_SOURCE_DIR}/abc) ///将根目录下的include和abc加入包含目录列表
5. LINK_DIRECTORIES(${PROJECT_SOURCE_DIR}/lib) ///将 ./lib加入编译器链接阶段的搜索目录列表
6. add_executable(hello $(SRC_LIST}) ///使用SRC_LIST源文件列表里的文件生成一个可执行文件hello
如:add_executable(hello main.cpp base.cpp base.h)
7. add_library(hello STATIC ${SRC_LIST}) 使用SRC_LIST源文件列表里的文件生成一个静态链接libhello.a
ADD_LIBRARY (base STATIC ${SRC_LIST})
8. add_library(hello SHARD ${SRC_LIST}) 使用SRC_LIST源文件列表里的文件生成一个动态链接库libhello.so
9. target_link_libraries(hello a b.a c.so) /// 将若干库文件链接到目标hello中,target_link_libraries里的库文件的顺序符合gcc/g++链接顺序的规则,即被依赖的库放在依赖它的库的后面,如果顺序有错,链接时会报错。
2.一个小例子
cmake_minimum_required(VERSION 3.8)PROJECT (Tsinghua) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/eigen3) SET (SRC_LIST base.cpp ) ADD_LIBRARY (base_static STATIC ${SRC_LIST}) add_executable(hello main.cpp base.cpp base.h)
Cmake生成平台适应性的解决方案->VS编译解决方案
Cmake常用基本命令复习相关推荐
- 布丁浅谈之Linux常用基本命令
常用基本命令 VI VIM编辑器 概念:是Linux系统命令行下的文本编辑器. 一般模式 dd 删除光标当前行 dnd 删除n行 u 撤销上一步 x 删除一个字母,类似于键盘上Delete功能 X 删 ...
- mysql基本命令总结_mysql 常用基本命令总结
mysql 常用基本命令1.登录 MySQL服务器 mysql –h ip地址:端口(如果是3306可以省略) –u mysql用户名 -p mysql -h localhost:3306 -u ro ...
- 【使用CMake组织C++工程】2:CMake 常用命令和变量
前言 前面的文章介绍了一个最简单的CMake工程,这篇文章将介绍一个稍微复杂一些的CMake工程,结合这个工程总结一下在组织一个C/C++工程时最为常用的一些CMake命令和变量.对于涉及到的命令和变 ...
- cmake 常用变量和常用环境变量查表手册
cmake 常用变量和常用环境变量查表手册 一,cmake 变量引用的方式: 前面我们已经提到了,使用${}进行变量的引用.在 IF 等语句中,是直接使用变量名而不通过${}取值 二,cmake 自定 ...
- 【Tools】cmake 常用变量和常用环境变量查表手册---整理
原文链接:https://blog.csdn.net/gubenpeiyuan/article/details/8667279 一.cmake 变量引用的方式: 前面我们已经提到了,使用${}进行变量 ...
- FFmpeg常用基本命令
FFmpeg常用基本命令 1.分离视频音频流 ffmpeg -i input_file -vcodec copy -an output_file_video //分离视频流 ffmpeg -i inp ...
- C语言再学习 -- Linux 中常用基本命令
参看:linux常用基本命令 参看:Ubuntu常用命令大全 #arch #显示机器的处理器架构 # unam ...
- ffmpeg 常用基本命令和ffmpeg处理RTMP流媒体的常用命令
ffmpeg 常用基本命令 1.分离视频音频流 ffmpeg -i input_file -vcodec copy -an output_file_video //分离视频流 ffmpeg -i in ...
- Linux(centos)的常用基本命令
2019独角兽企业重金招聘Python工程师标准>>> Linux的常用基本命令. 首先启动Linux.启动完毕后需要进行用户的登录,选择登陆的用户不同自然权限也不一样,其中&quo ...
最新文章
- Magento开发的特点有哪些?
- 机器学习 TOP 10 必读论文 | 资源
- Linux 空格转换行
- UA MATH524 复变函数6 Green定理与Green公式
- CentOS内核编译
- FolderBrowserDialog(文件夹浏览对话框)
- C#基础_值类型引用类型(十一)
- Netflix 付费用户达2亿、苹果VR眼镜、抖音电子钱包、虚幻引擎用于电影制作等|Decode the Week...
- 求解决方法_解决方法
- Java中的阻塞队列-LinkedBlockingQueue(二)
- 初学者怎样看懂python代码_入门编程(初学者怎样看懂代码)
- Java知多少(28)super关键字
- Pure Pursuit纯跟踪算法Python/Matlab算法实现
- pytorch中的gather函数_Pytorch中Emdedding函数的解释及使用方法
- charles工具页面介绍
- 港顺计算机怎么放音乐,csgo怎么放歌 CSGO内置语音播放歌曲
- 多线程/多进程/异步IO
- 联想服务器风扇智能调节,联想怎么调风扇转速
- springboot validation详解
- 在word中如何制作问卷调查?原来是使用word控件技巧!