我的任務是創建一個C++ SDK - 以動態庫的形式,很有可能。多平臺C++項目設置和工具
它應該是在不同的平臺上使用 - 的Windows(32/64位),Linux操作系統(32/64位),Mac OS中,Android的和的iOS。我沒有太多的多平臺項目設置經驗,我試圖決定使用哪種方法和工具來進行最簡單的開發和部署。
備註:我還需要在Bamboo CI服務器上準備自動構建(作業),以便爲每個所需目標運行編譯和測試。
我的主要難題是:
- 項目設置。我應該爲不同的平臺準備不同的項目模式(例如Windows上的.sln和Linux上的makefile),或者嘗試使用像CMake這樣的工具?準備一個適合所有這些目標平臺的CMake項目甚至是可能的嗎?
- 編譯工具鏈。我應該爲每個平臺使用「本地」C++編譯器(如Windows上的MSVC和Linux上的GCC),或者像Clang + LLVM這樣的單一工具鏈? Clang + LLVM(以及某些鏈接器)是否甚至能夠爲我需要的所有這些平臺構建可分發的二進制文件?
- 開發環境。哪種OS/IDE最適合於這類項目?我更喜歡在Windows上工作,而我通常的IDE是Visual Studio--在這種情況下它是否可行,或者其他更合適?
我知道,我的問題是非常複雜的,有對任何這些點沒有直接的答案,但每一個意見,甚至部分答案將非常感激:)
絕對使用像cmake這樣的工具。我會建議首先用gcc編譯,然後用visual進行測試(首先是可視化的,使用gcc編譯時可能會發現警告頁面),但這是我的觀點 – wasthishelpful