VS2010 C++ ATLプロジェクトをCIサーバー上に構築し、VS2010をインストールしないでください。CIサーバー上にATL VS2010プロジェクトを作成
VS2010をインストールした開発者マシンでプロジェクトを正常に構築できます。 VS2010はライセンスが必要なためCIサーバーにはインストールできません。
だから、今、私は次のようなアプローチをしようとしているために:
- はVS2010 Expressをインストール は、Windows 7は、Microsoft Windows SDKをインストール は
- インストールされたWindowsドライバキット (それはATLとMFCを含み)
CIマシンにATLヘッダーとライブラリがインストールされていますが、次のエラーが表示されます。
エラーC2039: 'AtlSetPerUserRegistrationは': 'AtlSetPerUserRegistration': 'ATL'
エラーC3861のメンバーでない識別子が
見つかりません私は、VS2010インストールからとWDKからatlbase.h
ヘッダを比較しました。彼らは異なります:
- atlbase.h
VS2010からインストールしているAtlSetPerUserRegistration
定義;
- atlbase.h
WDKからのインストールには含まれていません。
上記のエラーが発生します。
質問:VS2010をインストールせずにATLプロジェクトをビルドするCIビルドマシンを設定する方法は?
更新:
は、私が見つけたatldef.h
ファイルの確認次:だから、WDKを
#define _ATL_VER 0x0800 // Active Template Library version 8.00
:
#define _ATL_VER 0x0A00 // Active Template Library version 10.00
とWDKのバージョンがラインを持っています
VS2010バージョンがラインを持っていますATLバージョンはVS2010 ATLバージョンとは異なります。だから彼らは100%互換性がないのです。
ここで、VS2010をインストールせずにビルドサーバーでATL v10.0を入手する方法は?場合
多かれ少なかれ現在のATLはVisual Studioにのみインストールされています。 WDKのATLは基本的なものだけで互換性があります。無料ではないVS2010 Proを試してみましたので、CIサーバーの商用ライセンスが必要です。無料の(コミュニティ)エディションにATLを含む最新のVSバージョンを好むかもしれません。 –
TCに10人以上のエージェントを設定する必要があります。 VS2010 Proをそれぞれに設定することは最適な解決策ではないようです。サードパーティ製の静的リンクライブラリへの依存性を持つ一連のレガシーアプリケーションが存在するため、新しいバージョンのVSへのアップグレードは非常に困難です。とにかくあなたの提案をありがとう) –