2017-08-30 90 views
0

我目前正在將幾個舊版Qt5項目遷移到新的Team Foundation Server。所有項目都是在Visual Studio中使用Qt VS AddIn爲Windows開發的(因此不使用.pro文件)。我很樂意使用TFS Build Agent在其他平臺(主要是Linux)上構建這些代理。如何使用Team Foundation Server 2017構建Qt應用程序

我以前在使用Jenkins和qmake的其他項目上做過這樣的工作,在.pro文件中使用平臺相關的設置。

在其他平臺上,是否有建立的使用Qt5通過TFS構建服務器構建VS項目的工作流程?

回答

0

我不使用TFS,但由於TFS Build在Visual Studio解決方案上運行,因此應該可以使用VS2017的「Linux開發與C++」功能。只需在VS解決方案中設置一個Linux項目,它應該像其他任何項目一樣構建。

+0

問題是我需要某種Qt支持(moc等)VS Qt AddIn通過將qmake項目轉換爲VS解決方案來實現這一點。另外項目應該建立在Windows和Linux上。 – mrwienh

+0

對於一個跨平臺的構建,您可以在同一個版本中對Windows和Linux項目進行反映,並可能與奇怪的'#ifdef'分享源代碼。我想這要歸結爲你運行Qt插件並生成VS解決方案的頻率。如果每次構建時都是非啓動器,如果它只是一次性安裝,那麼它是可行的。 – stanthomas

+0

我從qmake生成VS解決方案時看到的問題是,類似於您針對代碼差異(使用預處理器)描述的內容,可能還需要在預生成過程中進行區分(鏈接庫的不同位置,不同的工具需要在編譯之前運行)。當使用像qmake或cmake這樣的構建系統時,所有這些都是微不足道的,但是我擔心這是否會轉化爲VS解決方案... – mrwienh

0

似乎您希望在Linux中使用TFS vNext構建系統構建跨平臺代碼。構建或部署您至少需要一個代理。 cross platform build agent支持Ubuntu,Red HatCentOS

詳細步驟請參閱本教程 - Deploy an agent on Linux。然後只需創建構建定義添加構建任務,選擇與構建在Windows上相同的Linux構建代理。更詳細的步驟和構建配置,你可以看看這個視頻教程 - Building and Deploy Applications In Linux With TFS

在你的情況,你的Linux環境中沒有相應的VS/Qt VS AddIn。您需要設置您的Linux構建代理本地環境以成功構建您的qt5應用程序,然後通過tfs構建並不困難。

另一種方法是腳本化Linux構建過程以通過SSH或其他遠程協議運行,並從Windows構建代理驅動該過程。

相關問題