CMakeLists.txt学习 1. 概要 主要是关于cmakelists.txt的编写模板,和多文档多目录的组织方法详解, 涉及第三方库的添加使用方法. 这里主要介绍cmakelists.txt的编写, 完整项目示例参见: https://github.com/whuwzp/vim_config/blob/master/test/cmake_example 2. 完整案例 项目目录结构:(省略了build目录) $ ~/test/cmake_example$ tree . ├── bin #…
本部分是关于ros CMakeLists.txt install  :可参考http://wiki.ros.org/catkin/CMakeLists.txt 1.CMakeLists.txt中的install规则之前的构建时间完成之后,目标将会放在catkin空间的devel空间之下.然而,通常我们想把目标安装到系统里面(关于安装路径的信息在REP 122中找到),以便可以由其他人来使用或者可以在一个局部文件中用于系统安装层面的测试.换句话说,如果想要"make install"你的…
1.CMake编译原理 CMake是一种跨平台编译工具,比make更为高级,使用起来要方便得多.CMake主要是编写CMakeLists.txt文件,然后用cmake命令将CMakeLists.txt文件转化为make所需要的makefile文件,最后用make命令编译源码生成可执行程序或共享库(so(shared object)).因此CMake的编译基本就两个步骤: 1. cmake 2. make cmake  指向CMakeLists.txt所在的目录,例如cmake .. 表示CMak…
ROS(Indigo)编程必须要理解CMakeList.txt的编写规则,教程地址:catkin/CMakeLists.txt,官网有相关的教程,中文的翻译版本写的很不错,教程地址:ROS中的CMakeLists.txt…
1.CMake编译原理 CMake是一种跨平台编译工具,比make更为高级,使用起来要方便得多.CMake主要是编写CMakeLists.txt文件,然后用cmake命令将CMakeLists.txt文件转化为make所需要的makefile文件,最后用make命令编译源码生成可执行程序或共享库(so(shared object)).因此CMake的编译基本就两个步骤: 1. cmake 2. make cmake  指向CMakeLists.txt所在的目录,例如cmake .. 表示CMak…
自定义变量 主要有隐式定义和显式定义两种. 隐式定义的一个例子是PROJECT指令,它会隐式的定义< projectname >_BINARY_DIR和< projectname >_SOURCE_DIR两个变量:显式定义使用SET指令构建自定义变量,比如:SET(HELLO_SRCmain.c)就可以通过${HELLO_SRC}来引用这个自定义变量了. 变量引用方式 使用${}进行变量的引用:在IF等语句中,是直接使用变量名而不通过${}取值. 常用变量 CMAKE_BINARY…
目录 1. 设置cmake最小版本 2. 设置项目名称 3. 设置编译目标类型 4. 指定编译包含的源文件 1. 明确指明包含的源文件 2. 搜索指定目录的所有的cpp文件 3. 自定义搜索规则 4. 包含多个文件夹里的文件 5. 设置包含目录 6. 设置链接库搜索目录 7. 设置需要链接的库 链接库目录搜索 指定完整路径 指定多个链接库 8. 设置变量 1. set直接设置变量的值 2. set追加变量的值 3. list追加或删除变量的值 9. 条件控制 if...else...elseif…
cmake -G"Visual Studio 9 2008 Win64" 以上命令得用cd命令切换到顶层CMakeLists.txt的当前目录,才能生效 以下是CMakeLists.txt的代码 cmake_minimum_required(VERSION 2.8) PROJECT(FFI) add_definitions(-D_CRT_SECURE_NO_WARNINGS) add_definitions(-D_LIB) #包含工程所需要的头文件路径 include_director…
本文首发于个人博客https://kezunlin.me/post/d5d4a460/,欢迎阅读! compile boost 1.66.0 from source on ubuntu 16.04 Guide apt-get # 1.58 for ubuntu 16.04 sudo apt-get install libboost-all-dev compile from source sudo apt-get -y purge libboost-all-dev wget https://dl.…
本文首发于个人博客https://kezunlin.me/post/aca50ff8/,欢迎阅读! compile gtest on windows 10 Guide compile gtest on ubuntu 16.04 compile gtest on windows 10 download wget https://github.com/google/googletest/archive/release-1.8.0.zip compile mkdir build cd build su…