[解決済み] MSBuildのプラットフォームはどのように指定するのですか?
質問事項
MSBuildを使用して、指定したターゲット・プラットフォーム(x86とx64の両方のバイナリが必要)でソリューションを構築しようとしています。これは私が試した方法です。
C:\WINDOWS\Microsoft.NET\Framework\v3.5>MsBuild SolutionPath\Solution.sln /t:Rebuild /p:Configuration=Release /p:Platform="x86"
しかし、プラットフォームが"Any CPU"でない場合、ビルドは常に失敗します。何が間違っているのでしょうか?
これはMSBuildが出力している間です。
C:\WINDOWSMicrosoft.NETFrameworksv3.5>MsBuild SolutionPathSolution.sln /t:リビルド /p:コンフィギュレーション=リリース /p:Platform="x86" Microsoft (R) Build エンジン バージョン 3.5.30729.1 [マイクロソフト .NETフレームワーク、バージョン 2.0.50727.3082] Copyright (C) Microsoft Corporation 2007. 著作権について を予約しました。
ビルド開始 2010.7.1 8:28:10. プロジェクト "SolutionPathSolution.sln" on ノード 0 (リビルドタグ). SolutionPathSolution.sln : エラー MSB4126:指定された解決方法 構成 "Release|x86" が無効です。 が無効です。有効な ソリューションの構成は 構成とプラットフォームのプロパティ (例) MSBuild.exe Solution.sln /p:Configuration=Debug /p:Platform="Any CPU")または、そのままにしておきます。 プロパティを空白にすると、デフォルトの ソリューションの構成 ビルド完了 プロジェクト "SolutionPathSolution.sln" (Rebuild t arget(s)) -- FAILED.
ビルドに失敗しました。
SolutionPathSolution.sln" (Rebuild) ターゲット) (1) -> (ValidateSolutionConfiguration ターゲット) -SolutionPathSolution.sln : error MSB4126: The specified s olution 構成 "Release|x86" が無効です。 は無効です。有効な ソリューション構成は 構成とプラットフォームのプロパティ (例) MSBuild.ex e Solution.sln /p:Configuration=Debug /p:Platform="Any CPU")または、そのままにしておきます。 プロパティを空白にすると、デフォルトの ソリューションの設定です。
0 Warning(s) 1 Error(s)
経過時間 00:00:00.03
devenvでx86/x64用にビルドしようとすると完全に動作しますが、私は必要なバージョンのVisual Studioをすべてインストールせずにビルドサーバーをセットアップしようとしています。ところで、もっと良いフリーツール(.NET framework 4をサポートしているもの)があれば、ぜひ教えていただきたいです。
解決するには?
に対するソリューションを構築したい場合 x86 と x64 の場合、ソリューションは両方のプラットフォーム用に設定されている必要があります。実際には 任意のCPU の構成になります。
プロジェクトで利用可能な構成を確認する方法
指定したプロジェクトで利用可能な設定を確認するには、プロジェクトファイル (
*.csproj
を検索してください。
PropertyGroup
とともに、右の
Condition
.
でビルドする場合
Release
モード
x86
のように、プロジェクトファイルに記述する必要があります。
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
...
</PropertyGroup>
Visual Studioで設定を作成・編集する方法
<サブ
(出典
マイクロソフト・ドット・コム
)
<サブ
(出典
msdn.com
)
<サブ
(出典
msdn.com
)
コンフィギュレーションの作成・編集方法 (MSDNに掲載)
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン