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