2017-08-20 61 views
-3

我試圖寫在win10上與Mingw的C++程序,但我無法運行我的Makefile,現在我嘗試了幾個我們的,我想我理解它的大部分,但它仍然不工作..如何創建一個C++的Makefile和使用它

HashTabelleTest.o: main.o HashTabelle.o 
    g++ -o HashTabelleTest main.o HashTabelle.o 

main.o: main.cpp HashTabelle.cpp 
    g++ -c main.o main.cpp 

HashTabelle.o: HashTabelle.cpp HashTabelle.h 
    g++ -c HashTabelle.o HashTabelle.cpp HashTabelle.h 

clear: 
    rm *.o *.exe 

爲管理員我使用的mingw32-化妝,但所有這說的是Nothing to be Done for 'Makefile.mak'

我嘗試編輯零件是新的,但還是同樣的事情

+0

當然,你的規則動作之前使用TAB? – user0042

+0

是的,我使用notpad ++,所以它告訴我,如果不是 –

+0

您應該考慮使用CMake之類的構建工具包,並讓它處理細節。 – spectras

回答

0

正如我知道它在勝利上有點不同,比如沒有rm但是del.But你更好的是一個所有:兩個system.In linux下,我總是用下面的格式

CC  = g++ 
LD  = g++ 
CFLAGS = -Wall -g -O0 
LFLAGS = 

all:main.elf 

clean: 
    rm -rf *.o *.elf 

########################## 
main.elf:main.o x.o y.o 
    $(LD) -o [email protected] $^ $(LFLAGS) 

%.o:%.cpp 
    $(CC) -c -o [email protected] $< $(CFLAGS) 
+0

謝謝,我會嘗試這個,但它可能需要一些時間來了解這個 –

+0

最重要的是,你知道:$ @是爲目標,$ ^是所有依賴,$ <是爲第一個依賴項, – Ethan2048

0

我有:

Hashtabelletest: main.o Hashtabelle.o 
    g++ -Wall -o Hashtabelletest main.o Hashtabelle.o 

main.o: main.cpp Hashtabelle.h 
    g++ -Wall -c main.cpp 

Hashtabelle.o: Hashtabelle.cpp 
    g++ -Wall -c Hashtabelle.cpp 

1.Problem是,我必須複製的libstdC++ - 從MinGW的6.dll \ BIN到我的工作文件夾

2.Thing是,我必須鍵入mingw32-make -f Makefile.mak,比workt我,@all感謝支持

相關問題