2016-11-11 23 views
1

VS2010 C++ ATLプロジェクトをCIサーバー上に構築し、VS2010をインストールしないでください。CIサーバー上にATL VS2010プロジェクトを作成

VS2010をインストールした開発者マシンでプロジェクトを正常に構築できます。 VS2010はライセンスが必要なためCIサーバーにはインストールできません。

だから、今、私は次のようなアプローチをしようとしているために:

  1. はVS2010 Expressをインストール
  2. は、Windows 7は、Microsoft Windows SDKをインストール は
  3. インストールされたWindowsドライバキット
  4. (それは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を入手する方法は?場合

+0

多かれ少なかれ現在のATLはVisual Studioにのみインストールされています。 WDKのATLは基本的なものだけで互換性があります。無料ではないVS2010 Proを試してみましたので、CIサーバーの商用ライセンスが必要です。無料の(コミュニティ)エディションにATLを含む最新のVSバージョンを好むかもしれません。 –

+0

TCに10人以上のエージェントを設定する必要があります。 VS2010 Proをそれぞれに設定することは最適な解決策ではないようです。サードパーティ製の静的リンクライブラリへの依存性を持つ一連のレガシーアプリケーションが存在するため、新しいバージョンのVSへのアップグレードは非常に困難です。とにかくあなたの提案をありがとう) –

答えて

0

他の誰が同じ問題を満たしている場合、ここでの回避策です:

ATLの必要なバージョンがインストールさVS2010(例えばVS2010プロフェッショナル)を開発者のマシン上で使用可能です。
%VCINSTALLDIR%ATLMFCというフォルダにあります。デフォルトで
はそれがATLMFCはVS2010 Expressがインストールされている%VCINSTALLDIR%、に手でビルド・サーバーにコピーすることができc:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\

フォルダです。 VS2010をインストールせずにVS2010 ATLプロジェクトをビルドサーバーで構築できるようになります。

これは回避策ですが、私はもっ​​と良い解決方法を見たいと思う。だから私は私の答えを受け入れていない。

関連する問題