2013-01-03 138 views
1

我使用的是可在Windows,Linux和VxWorks上運行的多平臺軟件。 軟件編寫EN C和C++,我們使用:如何在同一個項目和相同的源代碼庫中使用不同版本的Eclipse

  • 對於Linux目標,我們主要的開發環境,我們使用Eclipse的3.7.2 + CDT插件(附帶的Ubuntu 12.04的一個) 。
  • 對於VxWorks目標,我們使用Wind River Workbench,一個Windows,基於Eclipse 3.7.1的CDT程序,由Wind River提供,VxWorks的製造商。
  • 對於Windows目標,我們使用Visual Studio。

我的問題是Linux Eclipse和Wind River Workbench都會在項目的根目錄下創建.project和.cproject文件。由於項目目錄是跨平臺共享的,因此存在衝突。

我發現的唯一的解決方法是如下:

/.../mysoftware/others/src ---> contains the code 
/.../mysoftware/others/inc ---> contains the code 
/.../mysoftware/others  ---> where the Wind River Workbench ".something" files are 
/.../mysoftware/linux/src ---> symlink to ../others/src 
/.../mysoftware/linux/inc ---> symlink to ../others/inc 
/.../mysoftware/linux  ---> where the Linux Eclipse ".something" files are 

該解決方案是相當難看,使Eclipse插件爲我的SCM(水銀)停止工作,並且僅適用於Linux操作系統。

如何讓多個基於Eclipse的IDE使用自己的一組「.something」文件?

回答

2

我建議你不要將這些文件檢入SCM,並將它們添加到Mercurial的忽略列表中。

您可以檢入這些文件的模板版本(.project.linux,.project.vxworks等),每個開發人員在簽出Mercurial項目後可以手動複製到.project。只要它們變化不大,這就足夠了。

+0

感謝您的回答。我爲每個項目存儲了.project.vx和一個.project.vxworks文件。我沒有手工製作副本,而是創建了一個腳本,用於將.project.linux中的符號鏈接(我們有超過50個項目)創建爲.project。我甚至發現了Windows命令「mklink」。 –

+0

@redmatt很高興你得到它的工作。 'mklink'是一個未被充分利用的經典。 – artbristol

0

我建議使用一個原始文件夾進行源代碼管理操作,併爲每個平臺使用兩個不同的文件夾。

您應該使用每個文件夾中的符號鏈接複製結帳文件夾結構。 然後,在每個文件夾中創建所需的CDT項目。 Eclipse項目文件將進入該文件夾而不是原始文件夾,因此它們不會發生衝突。

相關問題