在學(xué)習(xí)cmake-practice這本書中的demo時,發(fā)現(xiàn)有個別沒跑通的地方,調(diào)了半天,在此記錄。
堅(jiān)守“ 做人真誠 · 做事靠譜 · 口碑至上 · 高效敬業(yè) ”的價值觀,專業(yè)網(wǎng)站建設(shè)服務(wù)10余年為成都酒樓設(shè)計小微創(chuàng)業(yè)公司專業(yè)提供企業(yè)網(wǎng)站建設(shè)營銷網(wǎng)站建設(shè)商城網(wǎng)站建設(shè)手機(jī)網(wǎng)站建設(shè)小程序網(wǎng)站建設(shè)網(wǎng)站改版,從內(nèi)容策劃、視覺設(shè)計、底層架構(gòu)、網(wǎng)頁布局、功能開發(fā)迭代于一體的高端網(wǎng)站建設(shè)服務(wù)。以下示例對應(yīng)于書中/backup/cmake/t2
。
創(chuàng)建好的文件目錄樹顯示如下:
1.1 工程目錄下CMakeLists.txtcmake_minimum_required(VERSION 3.10)
Project(HELLO)
add_subdirectory(src bin)
INSTALL(FILES COPYRIGHT README DESTINATION share/doc/cmake/t2)
INSTALL(DIRECTORY doc/ DESTINATION share/doc/cmake/t2)
INSTALL(PROGRAMS runhello.sh DESTINATION bin)
INSTALL(PROGRAMS build/bin/hello/ DESTINATION bin)
其中:
add_subdirectory(src bin) 源文件目錄為src 二進(jìn)制文件目錄為bin
除了書中列出來的幾個INSTALL
命令,尚需增加下面這一條命令,才可以將目標(biāo)文件也安裝到目標(biāo)文件夾下:
INSTALL(PROGRAMS build/bin/hello/ DESTINATION bin)
1.2 src文件夾
1.2.1 src文件夾下main.c//main.c
#includeint main()
{printf("Hello World from t1 Main!\n");
return 0;
}
1.2.2 src文件夾下CMakeLists.txtadd_executable(hello main.c)
1.3 runhello.sh./hello
注意這里要修改成目標(biāo)文件相應(yīng)的路徑。
1.4 其他文件/文件夾其他文件夾COPYRIGHT
,README
以及doc/hello.txt
均為注釋文件,可根據(jù)自己需要編輯。
mkdir build
cd build/
cmake -DCMAKE_INSTALL_PREFIX=/tmp/t2/usr ..
make
make install
若未通過-DCMAKE_INSTALL_PREFIX
指定路徑,默認(rèn)為:/usr/local
。
進(jìn)入CMAKE_INSTALL_PREFIX
自定義的安裝路徑,查看其目錄樹:
執(zhí)行命令:
$cd /tmp/t2/usr/bin
$sh runhello.sh
#Hello World from t1 Main!
$ ./hello
#Hello World from t1 Main!
編譯和安裝目前已經(jīng)完成了!
參考文獻(xiàn)[1] github.com/Akagi201/learning-cmake
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
分享題目:cmake入門之一:編譯、INSTALL及shell語句-創(chuàng)新互聯(lián)
網(wǎng)頁鏈接:http://m.newbst.com/article6/dgjeog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、App開發(fā)、微信小程序、網(wǎng)站策劃、ChatGPT、網(wǎng)站維護(hù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容