CMake 入門學習1 Hello World

2021-10-09 22:38:46 字數 2950 閱讀 8332

三、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...