?最近把Makefile
知識(shí)補(bǔ)上了。雖然現(xiàn)在項(xiàng)目都是使用cmake
、xmake
管理了,但Makefile
還是要學(xué)學(xué)的,因?yàn)?code>cmake、xmake
里面使用的概念、變量都是Makefile
中出現(xiàn)過的,有助于理解高級(jí)工具。
作者的目錄是這樣的,
?很簡單的配置,這里畢竟也只是在寫寫Leetcode、試試語言特性的時(shí)候會(huì)用到。
過程描述及代碼:ifeq ($(FILE_NUM),single)
成立,則取最新的.cpp文件名,只編譯這一個(gè)文件$(TARGET):$(OBJS)
中#作者的默認(rèn)配置
TARGET = main
OBJS:= $(patsubst %.cpp,%.o,$(wildcard ./*.cpp)) #當(dāng)前路徑的.cpp轉(zhuǎn)換為.o
NEWEST_FILE:=$(patsubst %.cpp,%.o,$(shell ls -lt | grep -Eo "\b\w+\.(cpp|c)" | head -n 1)) #獲取最新的文件
ifeq ($(FILE_NUM),single)
OBJS:= $(NEWEST_FILE)
endif
LDFLAGS:=
LIBS:=
CXXFLAGS:= -std=c++17 -O2 -m64
BUILD_EXIST = $(shell if [ -d build ]; then echo "exist"; else echo "noexist"; fi)
COMPILE_TIME = $(shell date +"%Y-%m-%d %H:%M:%S")
#MAKEFILE_DIR:= $(abspath $(dir $(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST)))) #makefile的位置
$(TARGET):$(OBJS)
-@echo ""
-@echo "compile_time: $(COMPILE_TIME)"
ifneq (exist,$(BUILD_EXIST))
@$(shell mkdir build)
@echo "build目錄不存在,已自動(dòng)生成"
endif
-@echo ""
-$(CXX) $^ $(CXXFLAGS) -o ./build/$@
@$(RM) $(OBJS)
@echo "----------------------Output----------------------"
@./build/$@
#清理
clean:
$(RM) ./build/$(TARGET) $(OBJS)
.PHONY:clean
快捷鍵設(shè)置Makefile
文件已經(jīng)寫好了,現(xiàn)在配置Vscode的編譯運(yùn)行快捷鍵。
Ctrl+Shift+P
,輸入“打開鍵盤”//編譯目錄下所有.cpp文件
{"key": "f6", //可以自己修改快捷鍵
"command": "workbench.action.terminal.sendSequence",
"args": {"text": "make -f /home/roya/workSpace/Makefile clean && make -f /home/roya/workSpace/Makefile\r" //修改為你的路徑
}
},
//只單獨(dú)編譯一個(gè)文件
{"key": "Ctrl+f6",
"command": "workbench.action.terminal.sendSequence",
"args": {"text": "make -f /home/roya/workSpace/Makefile clean && make -f /home/roya/workSpace/Makefile FILE_NUM=single\r" //修改為你的路徑
},
},
同上,加入快捷鍵就好。新建一個(gè)終端,并將pwd
設(shè)置為當(dāng)前打開的文件目錄。
{"key": "alt+f6",
"command": "workbench.action.terminal.newWithCwd",
"args": {"cwd": "${fileDirname}"
}
},
好了,配置完成。
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧
當(dāng)前題目:Vscode(WSL)下配置快速運(yùn)行C++的makefile與快捷鍵-創(chuàng)新互聯(lián)
URL網(wǎng)址:http://www.rwnh.cn/article38/hdesp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、網(wǎng)站維護(hù)、網(wǎng)站改版、標(biāo)簽優(yōu)化、微信小程序、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容