cmake

add_library
指定要编译的库,并将所有的 .c 或 .cpp 文件包含指定。
include_directories
将头文件添加到搜索路径中
set_target_properties
设置库的一些属性
target_link_libraries
将库与其他库相关联

Read more

cmakelist编写小记

CV随手小记:Cmakelist 编写小记

Cmake全称Cross Platform Make,起初为了跨平台需求,而后不断完善并广泛使用。优势是跨平台, 支持Linux, Mac和Windows等不同操作系统。

一.Cmake与其他编译工具的对比

gcc/g++是很常见的编译工具,是由GNU开发的编程语言译器, 主要用于C/C++等语言的开发,当项目简单,可以用gcc/g++编译目标和项目,但比较复杂时, 只用gcc组织编译架构会变得极其困难。Makefile是有条理的gcc编译命令的文件,利用make工具来执行Makefile文件的编译指令,当程序简单时, 可以手写Makefile,当程序复杂时, 一般利用CMake来自动生成Makefile。因而Cmake类似Make工具功能,用来“读取”并执行CMakeLists.txt文件的语句, 最终生成Makefile文件。Cmake语言开发相对简单,易于理解。

Read more