三、cmakelist.txt檔案說明
四、關於cmake在centos7下的公升級
cmake是一款跨平台的 通過cmakelist.txt構建makefile的工具。
入門**:
#include int main(int argc, char *ar**)
# set the minimum version of cmake that can be used
# to find the cmake version run
# $ cmake --version
cmake_minimum_required(version 3.5)
# set the project name
project (hello_cmake)
# add an executable
add_executable(hello_cmake main.cpp)
cmake .
make
./hello_make
構建後目錄示例:tree
# tree
.├── build
│ ├── cmakecache.txt
│ ├── cmakefiles
│ │ ├── 3.16.3
│ │ │ ├── cmakeccompiler.cmake
│ │ │ ├── cmakecxxcompiler.cmake
│ │ │ ├── cmakedeterminecompilerabi_c.bin
│ │ │ ├── cmakedeterminecompilerabi_cxx.bin
│ │ │ ├── cmakesystem.cmake
│ │ │ ├── compileridc
│ │ │ │ ├── a.out
│ │ │ │ ├── cmakeccompilerid.c
│ │ │ │ └── tmp
│ │ │ └── compileridcxx
│ │ │ ├── a.out
│ │ │ ├── cmakecxxcompilerid.cpp
│ │ │ └── tmp
│ │ ├── cmake.check_cache
│ │ ├── cmakedirectoryinformation.cmake
│ │ ├── cmakeoutput.log
│ │ ├── cmaketmp
│ │ ├── feature_tests.bin
│ │ ├── feature_tests.cxx
│ │ ├── hello_cmake.dir
│ │ │ ├── build.make
│ │ │ ├── cmake_clean.cmake
│ │ │ ├── cxx.includecache
│ │ │ ├── dependinfo.cmake
│ │ │ ├── depend.internal
│ │ │ ├── depend.make
│ │ │ ├── flags.make
│ │ │ ├── link.txt
│ │ │ ├── main.cpp.o
│ │ │ └── progress.make
│ │ ├── makefile2
│ │ ├── makefile.cmake
│ │ ├── progress.marks
│ │ └── targetdirectories.txt
│ ├── cmake_install.cmake
│ ├── hello_cmake
│ └── makefile
├── cmakelists.txt
└── main.cpp
定義最小需要的cmake版本
定義專案名稱
add_executable
(hello_cmake main.cpp)
cmake_minimum_required
(version 2.6
)project (hello_cmake)
add_executable
($ main.cpp)
這裡$
用來引用專案名稱。
可以在當前資料夾執行cmake .
,這樣生成的可執行檔案在當前目錄下;
也可以不在原始碼目錄來構建,如:
mkdir build
cd build
cmake ..
make
./hello_make
這樣生成的可執行檔案和cmake的檔案都在build下。
wget
# 編譯安裝
tar xvf cmake-3.6.2.tar.gz &&
cd cmake-3.6.2/
./bootstrap
gmake
gmake install
/usr/local/bin/cmake --version
# 刪除原來的cmake
yum remove cmake -y
ln -s /usr/local/bin/cmake /usr/bin/
cmake --version
cmake 學習入門
1.cmake 的學習入口 cmake 手冊文件一把一把的,就是不帶tutorial,ubuntu16 下的apt檔案就是這樣,無語了 我不需要讀那麼多,我只需要乙個tutorial就可以了,而tutorial只能從網上不能從man手冊或 apt檔案中得到了.不過github上有很多例子,也有tut...
cmake簡單入門1
查詢當前目錄下的所有原始檔,並將名稱儲存到 dir lib srcs 變數 aux source directory dir lib srcs 生成鏈結庫 add library tools cmake 最低版本要求 cmake minimum required version 2.8 專案名稱 p...
Cmake學習總結 1
1.cmake與make 的區別 程式的生成過程分為 原始檔 編譯 鏈結,這幾個過程。如果原始檔太多,乙個乙個編譯將成為問題,因此大佬們設計了一種批量編譯程式的工具 make 這種工具需要根據規則對原始碼進行編譯,這種規則就是makefile。對於乙個大的工程使用makefile編譯,寫這個make...