開発環境:Visual Studio 2013 (C++)
こんにちは。現在完成しているVisual Studioのプロジェクト(.sln)をビルドしてexeファイルを作るbatファイルを作りたいと考えています
このようなことは可能なのでしょうか?
メイクファイルプロジェクトを作り、コードを全て移植することも考えたのですが、こちらではプロパティ画面で追加のインクルードディレクトリやライブラリディレクトリを設定する項目がなく、DirectXのような外部インクルードができないという問題があります
少々漠然とした問ですが、自分でもどの方向にアプローチして挑戦したらいいのか解らない状態ですので、よろしければそれだけでもヒントをいただければと思います
それでは、失礼します
Visual Studioのmakeを外部から行いたい
Re: Visual Studioのmakeを外部から行いたい
とりあえずmsbuildが一番お手軽そうだったので、msbuildで実行する方向でやってみました
ということで、以下の手順で行いました
1.msbuildにPATHを通す(環境変数のPATHに”C:\Windows\Microsoft.NET\Framework\v4.0.30319”を追加)
2.実験用に空プロジェクト「makefiletest」を作成
3. makefiletestにmain.cpp,main.hを追加
4. その後コマンドプロンプトを立ち上げ、makefiletest.slnのある場所まで移動
5. コマンドプロンプトでmsbuild makefiletest.slnを実行
と、ここまでは良かったのですが、以下のようなエラーが出てビルドに失敗しました。
開発環境はOSがWindows 7 , Visual Studioが2013のExpressです
文章を読む限りではV120用のビルドツールがインストールされていないみたいなのですが、これは何をインストールすればいいのでしょうか?
それともExpressではこの方法は不可能なのでしょうか?よろしければご回答お願いします
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.Cpp.Platform
.targets(44,5): error MSB8020: The builds tools for v120 (Platform Toolset = 'v
120') cannot be found. To build using the v120 build tools, either click the Pr
oject menu or right-click the solution, and then select "Update VC++ Projects..
.". Install v120 to build using the v120 build tools. [C:\3dstg\makefiletest\ma
kefiletest\makefiletest.vcxproj]
ということで、以下の手順で行いました
1.msbuildにPATHを通す(環境変数のPATHに”C:\Windows\Microsoft.NET\Framework\v4.0.30319”を追加)
2.実験用に空プロジェクト「makefiletest」を作成
3. makefiletestにmain.cpp,main.hを追加
//main.cpp
#include <iostream>
#include "main.h"
int main()
{
std::cout << "Hello, from MSBuild!\n";
return 0;
}
// main.h
// main.h: the application header code.
/* Additional source code to include. */
5. コマンドプロンプトでmsbuild makefiletest.slnを実行
と、ここまでは良かったのですが、以下のようなエラーが出てビルドに失敗しました。
開発環境はOSがWindows 7 , Visual Studioが2013のExpressです
文章を読む限りではV120用のビルドツールがインストールされていないみたいなのですが、これは何をインストールすればいいのでしょうか?
それともExpressではこの方法は不可能なのでしょうか?よろしければご回答お願いします
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.Cpp.Platform
.targets(44,5): error MSB8020: The builds tools for v120 (Platform Toolset = 'v
120') cannot be found. To build using the v120 build tools, either click the Pr
oject menu or right-click the solution, and then select "Update VC++ Projects..
.". Install v120 to build using the v120 build tools. [C:\3dstg\makefiletest\ma
kefiletest\makefiletest.vcxproj]
Re: Visual Studioのmakeを外部から行いたい
プログラムメニューから、Visual Studio 2013-Visual Studioツール-開発者コマンドプロンプト for VS2013を選択し、開いたコマンドプロンプトで実行してみましたか。
私のPCにはVisual Studio 2013 Express for Windows Desktopをインストールしていますが、問題なく実行できます。
単純に通すパスが違うようですね。
VS2013では、C:\Program Files (x86)\MSBuild\12.0\Bin\MSBuild.exeを使うみたいですね。
C:\Windows\Microsoft.NET\Framework\v4.0.30319にあるMSBuildは使わないみたいです(v110→VS2012用?)。
私のPCにはVisual Studio 2013 Express for Windows Desktopをインストールしていますが、問題なく実行できます。
単純に通すパスが違うようですね。
VS2013では、C:\Program Files (x86)\MSBuild\12.0\Bin\MSBuild.exeを使うみたいですね。
C:\Windows\Microsoft.NET\Framework\v4.0.30319にあるMSBuildは使わないみたいです(v110→VS2012用?)。
written by へにっくす