cmake是乙個比make更高階的編譯配置工具,主要編寫cmakelists.txt檔案,然後使用cmake指令生成makefile檔案.
cmake編譯
cmake directory
make
directory是cmakelist.txt所在目錄
command (args...)command是命令名,大小寫無關
cmake可以直接獲取系統環境變數和windows註冊值
$env
#1.cmake verson,指定cmake版本
cmake_minimum_required(version 3.2)
#2.project name,指定專案的名稱,一般和專案的資料夾名稱對應
project(test_sqrt)
#3.head file path,頭檔案目錄
include_directories(
include
)#4.source directory,源檔案目錄
aux_source_directory(src dir_srcs)
#5.set environment variable,設定環境變數,編譯用到的原始檔全部都要放到這裡,否則編譯能夠通過,但是執行的時候會出現各種問題,比如"symbol lookup error ***xx , undefined symbol"
set(test_math$)
#6.add executable file,新增要編譯的可執行檔案
add_executable($ $)
#7.add link library,新增可執行檔案所需要的庫,比如我們用到了libm.so(命名規則:lib+name+.so),就新增該庫的名稱
target_link_libraries($ m)
cmake_minimum_required (version 2.6)
project (manager)
include_directories (include)
set(manager_files
$/client.cpp
$/main.cpp
)# add the executable
add_executable (manager $)
target_link_libraries (manager $ mysqlcppconn)
CMake交叉編譯配置
很多時候,我們在開發的時候是面對嵌入式平台,因此由於資源的限制需要用到相關的交叉編譯。即在你host宿主機上要生成target目標機的程式。裡面牽扯到相關標頭檔案的切換和編譯器的選擇以及環境變數的改變等,我今天僅僅簡單介紹下相關cmake在面對交叉編譯的時候,需要做的一些準備工作。cmake給交叉編...
CMake交叉編譯配置
很多時候,我們在開發的時候是面對嵌入式平台,因此由於資源的限制需要用到相關的交叉編譯。即在你host宿主機上要生成target目標機的程式。裡面牽扯到相關標頭檔案的切換和編譯器的選擇以及環境變數的改變等,我今天僅僅簡單介紹下相關cmake在面對交叉編譯的時候,需要做的一些準備工作。cmake給交叉編...
CMake交叉編譯配置
很多時候,我們在開發的時候是面對嵌入式平台,因此由於資源的限制需要用到相關的交叉編譯。即在你host宿主機上要生成target目標機的程式。裡面牽扯到相關標頭檔案的切換和編譯器的選擇以及環境變數的改變等,我今天僅僅簡單介紹下相關cmake在面對交叉編譯的時候,需要做的一些準備工作。cmake給交叉編...