eclipse 靈活使用makefile來編譯C/C++

需求:html

近期在看<C++ Primer Plus>, 做者在不斷優化本身的類,有不少不一樣的版本號,有很是多的測試函數(main函數),我使用的是eclipse+CDT來編寫C++。不可能爲每個類都建立一個project。那咋辦呢?java

咱們知道gcc+makefile+gdb。是linux下的神器。使得編敲代碼至關的靈活,奈何水平不夠,仍是使用了IDE來配合。linux

如下就來看看怎麼使用elipse+makefile來靈活編譯程序。c++

1. 首先上一張效果圖:shell


2. 文件說明。加入了目錄header和src。來存儲頭文件和實現文件,src如下有一個makefile文件,生成的可運行文件放在Binaries如下;windows

3. 怎麼配置:eclipse

(1)在project的屬性中,c/c++ build中。新建一個配置(manage configuration)。函數

(2)build settings中。確定是將本身主動生成makefile的選項給去掉,如下的build路徑中選擇makefile所在的路徑就能夠;post

(3)可以參考下圖,詳細配置。可以參考:http://yuoveyu.blog.51cto.com/2926448/596429學習


4. 剩下的就是本身寫makefile文件了,有個經典的教程:<跟我一塊兒寫makefile>。可以參考,我這裏的makefile:

CC :=	g++
RM := rm -rf
 
all :	usetime0  usetime1 usetime2 usetime3
 
clean :
	$(RM)	usetime0 usetime1 usetime2 usetime3
 
usetime0 :	usetime0.cpp
	$(CC)	usetime0.cpp mytime0.cpp -o ../Binaries/usetime0 

usetime1 :	usetime1.cpp
	$(CC)	usetime1.cpp mytime1.cpp -o ../Binaries/usetime1
	
usetime2 :	usetime2.cpp
	$(CC)	usetime2.cpp mytime2.cpp -o ../Binaries/usetime2

usetime3 :	usetime3.cpp
	$(CC)	usetime3.cpp mytime3.cpp -o ../Binaries/usetime3

5. windows下使用vs2012怎麼靈活的編譯呢?  眼下使用的是ifdefine來進行控制相應的main函數,想使用哪一個main函數。就在那個main函數裏define一個宏變量。記錄一個問題:P CH 警告:標頭中止點不能位於宏或# if塊中, #pragma once做爲頭文件的第一句就可以避免出現文章標題所說的警告問題.

寫在後面:

1.eclipse的配置,曾經寫過一個eclipse安裝NS3。事實上跟這個流程差點兒相同。

2.怎麼學習C++,可以參考文章:怎樣學好C++ : 包含一些書籍以及和java對照學習,可以本身找些開源的項目來學習。 知乎上也有討論主題:怎麼樣纔算學好C++

相關文章
相關標籤/搜索