2011-01-28 49 views
2

我正在研究具有Visual C++(超級大多數)& XCode開發人員的跨平臺C/C++代碼庫。它也需要在Linux上編譯,因爲這是它的部署位置。我們目前正在使用從Visual C++,XCode,& Unix命令行調用的複雜的Unix makefile。關於使用本機Visual C++項目vs makefile項目的意見

然而,makefile文件的項目導致爲Visual C幾個生產力損失++開發人員:

  1. 較慢的構建時間
  2. 智能感知&文本搜索沒有爲文件很好地工作在項目沒有直接引用
  3. 沒有.h依賴生成(不清楚如何在Windows上執行)

添加本機Visual C++項目有以下幾種DES:

  1. 大量的工作提到here也許VC++ 2010的等級屬性表將有助於管理所有這些不同的平臺配置。
  2. 更多的工作,由於與本地項目

目前同步的makefile,我正在考慮增加一個本地項目Windows開發者。任何人都可以提供他們最好的經驗或建議如何減少這兩種方法的問題。

我已經考慮CMake並親自使用它,但它很難說服其他人學習cmake &與本地項目同步將是一個問題。

+1

CMake只是一個問題,如果你喜歡浪費時間。那些喜歡不得不保持複雜的makefile系統的人會絕對討厭它,因爲它需要他們放下忙碌的工作並做一些重要的事情。 – 2011-01-28 01:20:45

回答

3

我已經考慮CMake和個人會使用它,但它會很難說服其他人學習的cmake &與本地項目同步這將是一個問題。

關於CMake的好處是,它爲您構建了所有的配置。您可以設置一個CMake項目,然後使用它來爲您生成VS解決方案,XCode項目和unix makefile。

這是一個巨大的進步 - 每個人都可以在他們的「原生」環境中工作,無論他們在Windows,Mac或Unix上。

+0

它是否允許你倒退?即,如果您通過Visual Studio添加內容,您是否可以讓CMake將這些更改同步回全球項目? – 2011-01-28 01:21:54

0

我已經通過編寫自己的轉換器來處理這個問題,該轉換器可以爲各種嵌入式開發環境同步腳本。如果上述使用CMake的答案類似於你,那麼這就是要走的路。但是,如果它太複雜,那麼滾動你自己的定製工具並不困難。只需要同步兩種方式。

另外,如果你沒有它。視覺輔助的Visual Studio是真棒:)

0

我不是生成文件生成器的粉絲,cmake的QMAKE等。

我是make的粉絲。我們有一個makefile(好幾個,但實際上它們包含了對方,沒有涉及遞歸製作),它知道所有平臺上的所有項目依賴關係(windows,wince,linux,mac,...)。這給:

  • Makefile文件是真的沒有超過源列表(包括依賴關係自動生成的構建過程中),在每個平臺上
  • 相同的生成命令,除了指定的工具鏈
  • 構建我使用所有的CPU
  • 很短的時間,對什麼都不做的
  • 開發者可以使用他們看中什麼IDE
    • 的vim,emacs的,qtcreator,月食時,Xcode都在用
    • 我經常用VC++在Windows(調試器)
  • 腳本化。偉大的方式來自動化測試

不錯。