cmake t2 乙個完整工程

2021-08-19 19:32:08 字數 1953 閱讀 8261

目標

本小節的任務是讓前面的 hello world 更像乙個工程,我們需要作的是:

目錄結構

|t2/

|doc/

hello.txt

|src/

main.c

cmakelists.txt

cmakelists.txt

readme

runhello.sh

t2/cmakelists.txt

cmake_minimum_required(version 3.5)

project (hello)

add_subdirectory(src bin)

#add_subdirectory(source_dir [binary_dir] [exclude_from_all])

#這個指令用於向當前工程新增存放原始檔的子目錄 ,此處設定為bin 是相對於 project_binary_dir 也即 "$/bin"

#binary_dir可以指定中間二進位制和目標二進位制存放的位置

#exclude_from_all引數的含義是將這個目錄從編譯過程中排除,比如,工程的 example可能就需要工程構建完成後,再進入 example 目錄單獨進行構建(當然,你也可以通過定義依賴來解決此類問題)

#add_subdirectory(src)

#如果我們在上面的例子中將 add_subdirectory (src bin)修改為 add_subdirectory (src), 預設使用"$/子目錄名稱"作為存放路徑

#那麼在 build 目錄中將出現乙個 src 目錄,生成的目標** hello 將存放在 src 目錄中。

#也可以手動指定

#add_subdirectory(src "$/bin")

install(programs runhello.shdestination bin)

#安裝 doc 中的 hello.txt,這裡有兩種方式:一是通過在 doc 目錄建立

#cmakelists.txt 並將 doc 目錄通過 add_subdirectory 加入工程來完成。另一種方法

#是直接在工程目錄通過install(directory 來完成),前者比較簡單,各位可以根據興趣自己完成,我們來嘗試後者,順便演示以下 directory 的安裝

#因為 hello.txt 要安裝到//share/doc/cmake/t2,所以我們不能直接安裝

#整個 doc 目錄,這裡採用的方式是安裝 doc 目錄中的內容,也就是使用」doc/」

install(directory doc/destination share/doc/cmake/t2)

t2/src/main.c

#include

int main()

t2/src/cmakelists.txt

#換個地方儲存目標二進位制

#不論是 subdirs 還是 add_subdirectory 指令(不論是否指定編譯輸出目錄),我們都可

#以通過 set 指令重新定義 executable_output_path 和 library_output_path 變數

#來指定最終的目標二進位制的位置(指最終生成的 hello 或者最終的共享庫,不包含編譯生成

#的中間檔案)

set(executable_output_path "$/bin2")

set(library_output_path "$/lib2")

add_executable(hello main.c)

install(targets hello

runtime destination bin

library destination lib

archive destination libstatic)

乙個完整的健身方案

乙個完全的健身方案應當包含吃 飲食 練 訓練 睡 睡眠 三個方面,而練則由心肺,力量,柔韌三個主要部分組成。有鑑於此,本人給出的訓練計畫是 開始時用5 10分鐘有氧熱身,最後用5 10分鐘拉伸放鬆,中間是40 50分鐘的力量訓練。力量訓練主要有 1 背部 引體向上 頸前下拉 2 胸部 平板臥推 坐姿...

乙個完整的大作業

1.選乙個自己感興趣的主題。2.網路上爬取相關的資料。3.進行文字分析,生成詞云。4.對文字分析結果解釋說明。5.寫一篇完整的部落格,附上源 資料爬取及分析結果,形成乙個可展示的成果。詞云.txt w for i in range 20 print c i for words count in ra...

乙個完整的大作業

從事跨境電商的工作心得 2015年,那時我剛好大二,一次偶然的機會,我接觸到了跨境電商這個行業 最先接觸到的就是 wish 這個跨境平台,從開始註冊賬號到出單,花了整整 6個月的時間 之後的每個月不但掙到了自己的生活費,而且還有一大部分資金剩餘 之後隨著單量的不斷增加,資金開始緊張,由於自身人脈和資...