在Eclipse CDT中利用Build Configuration構建有多個main函數的程序

進來在爲家裏寶寶編寫C/C++教程講義,想用Eclipse做個project,裏面每個文件是一個演示程序或者練習的答案。由於每個源代碼文件都是完整的,都會有main函數,因此就會導致鏈接時出錯,提示main函數重複定義。看到Eclipse有多build target的功能,就考慮使用這個功能來爲每個源代碼文件構建一個target來解決main函數重複定義的問題。查了很多資料,都說要用分別創建不同的makefile來解決。我懶得寫makefile,也暫時不打算讓家裏小傢伙學習makefile那一大套語法規則,所以就琢磨從eclipse自身已有的菜單、對話框界面下手。研究了一番,總算琢磨出來了設定方法。

步驟如下:

1. 在Project Explorer視圖中鼠標右擊project名稱,在彈出菜單裏選擇"Build Configurations"菜單中的"Manage ..."菜單項;

2. 在彈出的"Manage Configurations"對話框中點擊"New ..."按鈕:

3. 在彈出的"Create New Configuration"對話框中輸入新的Target名稱,"copy settings from"選"Existing configuration"或"Default configuration",在右邊的列表框中選一個用於作爲母版的現有configuration,一般可選用eclipse內置的debug。

4. 點擊"OK"按鈕後,即創建了一個新的Build Target。

5. 接下來,要將project中不需要被包含在剛剛建立的target中的源代碼文件剔除。鼠標右擊需要從build target中剔除的源代碼文件,在彈出菜單中選擇"Resource configurations"菜單的"Exclude from build ..."菜單項:

6. 在彈出的"Exclude from build"對話框中勾選不包含此代碼文件的build target,並點擊"OK"按鈕:

到這時候,還只是build target配置好了,還沒法運行這個target,還得在Debug Configurations和Run Configurations中設定對應的調試和運行配置。

7. 選擇Run菜單的"Run Configurations ..."菜單項:

8. 在彈出的"Run Configurations"對話框中,選中左側的"C/C++ Application",然後點擊對話框上方的"new launch configuration"按鈕:

9. 在右側輸入運行配置的名稱、可執行文件所在相對路徑和名稱,在build configuration列表中選擇此前創建的build configuration,並點擊apply使之生效:

至此,完成了多target的配置。在eclipse的主界面上可以看到此前設定的結果:

可以看到,在eclipse中配置多target實在是一件很麻煩的事情,遠不及在Code::Blocks中來得方便。

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章