2014-04-18 38 views
1

我正在嘗試使用Makefiles來實踐一個非常簡單的程序。程序文件是:此生成文件只創建.o文件

main.cpp 
other.cpp 
other.h 

我想最終的可執行文件是Prog。

當我運行這個時發生了什麼是我得到一個main.o和other.o但沒有Prog。

我在這裏錯過了什麼?

## file Makefile 

CXXOBJECTS= %.o 
CXX= g++ 
CXXSOURCES= main.cpp other.cpp 
CXXFLAGS= -std=c++11 -O2 


Prog : main.o other.o 


main.o : main.cpp 
other.o : other.cpp other.h 




## eof Makefile 

回答

0

你快到了。您有以下:

Prog: main.o other.o ## these are your dependencies 
    g++ main.o other.o -o Prog 

這應該給你打電話Prog的可執行文件。儘管實際上,一個更好的makefile會是這樣:

CXXOBJECTS= %.o 
CXX= g++ 
CXXSOURCES= main.cpp other.cpp 
CXXFLAGS= -std=c++11 -O2 

Prog: main.o other.o ## these are your dependencies 
    CXX main.o other.o -o Prog 

main.o : main.cpp 
    CXX CXXFLAGS -c main.cpp 

other.o : other.cpp 
    CXX CXXFLAGS -c other.cpp 

其實,你可以讓它變得更好,但我不記得makefile文件的語法糖從我的頭頂(IDE的:P)

+0

真棒,只是一行:P – IBit

+0

我顯然需要15個代表投票了......我會'在4分鐘內'檢查:) – IBit

+0

@IBit這是正常的,只要你的MF正在工作:) – noobProgrammer