CMakeLists.txt:
cmake_minimum_required (VERSION 2.6)#限定了cmake的版本
project (leptjson_test C)#项目的名称是leptjson_test C(工程名字)
if (CMAKE_C_COMPILER_ID MATCHES "GNU|Clang")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -pedantic -Wall")#set用来设置变量
endif()
add_library(leptjson leptjson.c)#生成一个库文件名称为leptjson
add_executable(leptjson_test test.c)#指示test.c需要编译成一个名称为leptjson_test的可执行文件
target_link_libraries(leptjson_test leptjson)#将给定的库链接到一个目标上
例子:HelloWorld
首先创建一个HELLO文件夹,里面创建一个main.c文件,内容如下:
include stdio.h
int main()
{
printf("Hello World!\n");
return 0;
}
再创建一个CMakeLists.txt
PROJECT (HELLO)
SET(SRC_LIST main.c)
ADD_EXECUTABLE(hello ${SRC_LIST})
第一行:设置项目名称;
第二行:将SRC_LIST值设置为main.c
第三行:生成可执行文件 hello。 ${} 是引用某个值。
Terminal中cd进入到HELLO目录,创建一个build目录用于外部构建(编译所产生的文件都生成在build目录),cd 到build目录,然后依次执行下面三条命令:
cmake ..
make
./hello