文档章节

怎样编写Cmake的配置文件Cmakelist.txt

天蚕宝衣
 天蚕宝衣
发布于 2016/12/22 22:30
字数 324
阅读 61
收藏 0

CMake是一个编译配置工具, 它是一个跨平台c/c++ 编译配置工具。可以通过编写CMakeLists.txt配置文件,可以控制生成的Makefile或者windows下工程文件。还支持安装(make install)、测试安装的程序是否能正确执行(make test,或者ctest)、生成当前平台的安装包(make package)、生成源码包(make package_source)、产生Dashboard显示数据并上传等高级功能,只要在CMakeLists.txt中简单配置,就可以完成很多复杂的功能,包括写测试用例。

如果有嵌套目录,子目录下可以有自己的CMakeLists.txt。

所以写好CMakeLists.txt 是使用好Cmake的关键

工具/原料

  • Cmake

方法/步骤

  1. 1

    Cmake有Linux,Windows多个平台版本,如图是Windows下版本程序

    怎样编写Cmake的配置文件Cmakelist.txt

  2. 2

    更具一个简单多目录c项目,学下CMakeLists.txt编写规范

    怎样编写Cmake的配置文件Cmakelist.txt

  3. 3

    根目录下cmakelist文件内容:

    set(CMAKE_INSTALL_PREFIX):设置程序的安装目录,优先级比cmake命令参数设置高。

    add_subdirectory(编译文件子目录)

    怎样编写Cmake的配置文件Cmakelist.txt

  4. 4

    libhello目录下的CMakeLists文件内容:

    怎样编写Cmake的配置文件Cmakelist.txt

    怎样编写Cmake的配置文件Cmakelist.txt

  5. 5

    src目录下的CMakeLists文件内容:

    怎样编写Cmake的配置文件Cmakelist.txt

    怎样编写Cmake的配置文件Cmakelist.txt

  6. 6

    查看编译后结果:

    怎样编写Cmake的配置文件Cmakelist.txt

  7. 7

    安装后目录结构:

    怎样编写Cmake的配置文件Cmakelist.txt

    END

注意事项

  • 注意cmake命令参数含义

本文转载自:http://jingyan.baidu.com/article/fea4511a1c984ef7bb912592.html

共有 人打赏支持
天蚕宝衣
粉丝 22
博文 239
码字总数 179255
作品 0
天津
私信 提问
cmake 学习笔记(一)

最大的Qt4程序群(KDE4)采用cmake作为构建系统 Qt4的python绑定(pyside)采用了cmake作为构建系统 开源的图像处理库 opencv 采用cmake 作为构建系统 ... 看来不学习一下cmake是不行了,一点一点...

晨曦之光
2012/05/08
726
0
在 linux 下使用 CMake 构建应用程序

CMake 是一个跨平台的自动化建构系统,它使用一个名为 CMakeLists.txt 的文件来描述构建过程,可以产生标准的构建文件,如 Unix 的 Makefile 或Windows Visual C++ 的 projects/workspaces 。文...

红薯
2009/02/06
870
0
cmake 学习笔记(三)

接前面的 Cmake学习笔记(一) 与 Cmake学习笔记(二) 继续学习 cmake 的使用。 学习一下cmake的 finder。 finder是神马东西? 当编译一个需要使用第三方库的软件时,我们需要知道: 去哪儿找头...

晨曦之光
2012/05/08
162
0
在TX2上安装VIINS-Mono——问题总结

1 ceres-solver 我们一般通过以下命令安装Eigen: 默认安装在。 在CMakeList.txt中一般用以下语句找到Eigen: 如果有时找不到,可以替换成: 在TX2上安装ceres-solver时,出现以下错误: – ...

W_Tortoise
10/25
0
0
cmake 学习笔记(二)

在 Cmake学习笔记一 中通过一串小例子简单学习了cmake 的使用方式。 这次应该简单看看语法和常用的命令了。 简单的语法 注释 命令语法 字符串列表 变量(字符串或字符串列表) set(Foo a b c) ...

晨曦之光
2012/05/08
325
0

没有更多内容

加载失败,请刷新页面

加载更多

Docker搭建代码质量检测平台-SonarQube(中文版)

Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量。通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言...

Jacktanger
10分钟前
0
0
Windows / Linux / MacOS 设置代理上网的方法汇总

本文汇总了 Windows / Linux / MacOS 设置代理上网的各种方法,总结如下: 1、设置系统代理(Windows、Linux、MacOS) 2、设置代理插件(Chrome、Chromium、Firefox、Opera、QQ等浏览器) 3、...

sunboy2050
昨天
2
0
自定义 Maven 的 repositories

有时,应用中需要一些比较新的依赖,而这些依赖并没有正式发布,还是处于milestone或者是snapshot阶段,并不能从中央仓库或者镜像站上下载到。此时,就需要 自定义Maven的<repositories>。 ...

waylau
昨天
1
0
徒手写一个es6代码库

mkdir democd demonpm initnpm install -g babelnpm install -g babel-clinpm install --save-dev babel-preset-es2015-node5 在项目目录创建两个文件夹 functional-playground ......

lilugirl
昨天
3
0
linux定位应用问题的一些常用命令,特别针对内存和线程分析的dump命令

1.jps找出进程号,找到对应的进程号后面才好继续操作 2.linux查看进程详细信息 ps -ef | grep 进程ID 3. dump内存信息 Jmap -dump:format=b,file=YYMMddhhmm.dump pid 4.top查看cpu占用信息 ...

noob_chr
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部