2009-12-12 156 views
7

您好,我正在爲我的Windows平臺上的工具鏈進行跨平臺C++開發。我計劃使用Boost.Build構建和Boost :: Test以進行單元測試。我將爲我的VCS使用Mercurial,因爲我可以將該回放放到我的外部HD上,然後將其放到我的Windows或Linux分區中。主要的東西是編輯器編譯器/調試器。任何人有任何建議?跨平臺C++工具鏈

隨着Boost.Build我可以在技術上與它支持的任何編譯器輕鬆構建。這意味着Windows上的MSVC和Linux上的GCC通過使用與標誌相同的腳本。

+0

你實際上是要在兩個平臺上運行IDE嗎?我想這對平臺特定的調試很有用,但大多數情況下,我認爲你只是在一個平臺上開發(聽起來像你的Windows的Windows),然後編譯兩者。 – 2009-12-12 18:20:11

+0

誠實地說,如果我在很多情況下使用IDE,我都會很少關心它們,儘管使用相同的編輯器會很好。 – blewisjr 2009-12-12 18:25:54

+0

什麼平臺?如果你只提到Linux和Windows,那麼我建議你使用虛擬機而不是雙引導系統。然後,您可以使用本機工具並從Windows運行本機Linux版本(或其他方式)。它使測試更快,更簡單。例如,使用免費版本的VMWare Server。 – Clifford 2009-12-13 10:59:40

回答

7

我可以在Windows和Linux上建議CMake,因爲您可以生成本地Visual Studio項目以及Eclipse CDT項目和普通的舊makefile。

如果你是針對多個平臺,但發現自己在一個單一的平臺,主要開發,我強烈建議持續構建/集成系統,以確保檢查在一個平臺上的其他人不打破建設。

+0

是的CMake在這裏是一個確定的選項。其實我只是看着它。這個連續的構建系統正是我希望能夠或多或少手動完成的。我希望能夠從回購協議中獲得回報,並在其他服務器上進行構建,以確保它不會中斷。我的主要問題是我是否想要開發使用IDE中的項目文件或不開始。如果我使用類似vim的開發並通過命令行使用make文件進行開發並以相同的方式進行調試,那麼看起來更容易。 – blewisjr 2009-12-12 19:41:45

+0

這裏唯一真正的問題是你如何啓動該項目,並將其放置在vcs等... – blewisjr 2009-12-12 21:09:04

+0

+1我建議CruiseControl(http://cruisecontrol.sourceforge.net/)持續集成。我個人建議使用虛擬機或單獨的盒子,而不是交叉開發。持續集成將使平臺構建自動化,甚至可以運行測試並報告結果(通過電子郵件)。具有本地工具的虛擬機與跨開發相比便宜得多。 – Clifford 2009-12-13 11:24:57

6

Code::Blocks是一款免費的開源跨平臺C++ IDE。它支持MS和GCC編譯器等等。

3

你也可以在windows上使用gcc/g ++。至於調試器:gdb和ddd可能在cygwin中。編輯:vim(注意:它確實是一個可編程的編輯器,而不是IDE)。

+0

難以瞭解更多高級功能,我通常只使用它來快速編輯配置文件。 – blewisjr 2009-12-12 18:30:18

+0

答案取決於什麼是「更高級的功能」。但是不,對vim的任何部分都沒有什麼困難,但是當然,你會一直忘記你很少使用的東西。 – 2009-12-12 18:45:56

8

Qt Creator在Windows上使用MinGW,在Linux上使用GNU編譯器。這就是我所使用的,它工作得很好。請注意,您在使用Qt Creator進行開發時不必使用Qt。

4

主要的東西在我的方式是 編輯器編譯器/調試器。任何人都有 有什麼建議嗎?

是:Qt Creator一個下載並安裝將滿足您請求 - 挑「LGPL」許可證路線和download and install the SDK甚至安裝GCC,G ++,......你。集成調試器非常好,您可以從代碼中獲得跨平臺的行爲,您的工具

+0

QT Creator是否也在Windows上安裝GCC工具集? – blewisjr 2009-12-12 18:31:30

+1

是的,如果你選擇了SDK - 那就是爲什麼它是280mb。但作爲一個單獨的下載程序很容易,而且一切正常。當然,你也可以在組件中做所有事情,但是在Windows上設置和繁瑣的工作更多,因爲在那裏沒有apt-get :) – 2009-12-12 20:30:01

+0

是的,這是驚人的:P – blewisjr 2009-12-12 20:52:30

1

Vim的,GDB,GCC/G ++,生成文件 - Windows和Unix :)

另一個投票Code BlocksQt Creator - 你可以同時使用它們。

有商業工具太:Visual Studio的旁邊有MagicC++(IDE),調試器就像TotalViewAllineaZero-bugsUndoDB ...如果你想留在VStudio檢查這些VSBridgeWinGDB

無論如何,您總是可以在Windows上使用MSVC和Unix上的其他工具(gdb/DDD用於調試,vim/emacs用於版本) - 我已經以這種方式工作了很多年。所有平臺的公共環境很好,但有時很難(幾乎不可能)在公司(尤其是大公司)「強制」它;-)