我正在學習C++。我想要一個makefile來編譯當前目錄下的所有cpp文件來分離可執行文件。 例如:Makefile將目錄中的所有cpp文件編譯爲單獨的可執行文件
在目錄下有3個C++文件,如examp1.cpp,examp2.cpp和examp3.cpp。我想一個makefile,這將編譯和鏈接他們,給examp1.exe,examp2.exe和examp3.exe
我創建了一個bash腳本來編譯所有的人,並創建EXE文件,但我認爲,這不是確切的做法。
我有一個「.c」的Makefile,但這似乎並沒有在這裏工作。它只是創建目標文件而不是實際鏈接它。這是因爲如下:
SRCS=$(wildcard *.c)
OBJS=(SRCS:.c=.o)
all: $(OBJS)
上面的代碼編譯所有新的和修改「.c」的文件,在當前目錄相同的名稱「的.o」文件。
我用來創建可執行文件的bash腳本如下:
for i in ./*.cpp
do
g++ -Wno-deprecated $i -o `basename $i .cpp`".exe"
done
這意味着我要什麼「的.cpp」的文件,我把該目錄中,通過使用一個簡單的‘讓所有’或任何像它應該編譯。
您是否嘗試過嘗試創建makefile?如果是這樣發佈,那麼我們可以幫助你。有[文檔](http://www.gnu.org/software/make/manual/make.html)可用於開始。 – Joe 2012-03-20 12:59:46
製造商的版本因供應商而異。你在用什麼?你在Linux上使用GNU Make嗎?微軟在Windows/Visual C++上製作? – 2012-03-20 13:02:16
您是否試過編寫一個makefile來編譯*一個源文件並生成一個可執行文件? – Beta 2012-03-20 13:57:00