一般在ubuntu下開發程式,免不了要用camke工具,但是每次都要手動刪除cmake的輸出,實在太不省心。
在原始檔同級目錄下寫乙個makefile,內容如下。
build_dir = ./build
dest_dir = ./bin
dest_exe_name = main
all: build
cd $(
build_dir); make -j4
run:
cd $(
dest_dir); ./$(
dest_exe_name)
clean:
rm $(
build_dir) -rf
build:
mkdir $(
build_dir);cd $(
build_dir); cmake ..
功能解釋:
make clean
//清空build資料夾
make build
//在同級目錄下新建build目錄,生成makefile
make all
/make
//編譯成可執行檔案,在bin資料夾
make run
//進入bin資料夾,執行可執行檔案
注意所有命令都在源檔案目錄下執行。一般make run用不到,因為可執行檔案引數不一,反而直接在bin資料夾執行更方便。
如果程式的依賴關係或是目標檔案改變,需要清空所有之前cmake的輸出,在源檔案目錄執行下面三步
make clean
make build
make
如果只是改變原始檔的程式內容,則只需在源檔案目錄下執行
make
CMAKE 包含VS輸出目錄
有時,我們希望include包含程式輸出目錄,則 只能獲取輸出路徑,無法獲取當前的config,經過查詢,發現cmake cfg intdir 變數正好可以做此時。cmake cfg intdir 對每個配置輸出子目錄的構建時引用。對於支援構建樹中的多個配置的本機構建系統 例如visual stud...
串列埠清空輸入輸出快取
在我們的工作中,串列埠是一種比較常用的資料傳輸方式。在某些應用場景下,當程式啟動並開啟串列埠後,我們不希望讀出串列埠開啟之前的輸入快取資料 即核心驅動已接收但是並未被應用層讀出的資料 因此需要對輸入快取資料進行清空 刷清 丟棄 操作。下面以linux系統上串列埠程式設計為例進行說明 測試環境 硬體環...
CMake 設定Target輸出目錄和字尾名
一.set executable output path bin 上面的語句能設定可執行檔案的輸出目錄 在win vs環境下,會自動在你所設定的目錄後面擴充套件一層 目錄,所以最終生成的debug版本程式會在 bin debug 目錄下,release版本程式會在 bin release 目錄下.在...