3

Visual C++ 2008 を使用する Windows と Debian Linux の両方でコンパイルする既存のプロジェクトがあります。このプロジェクトでは、標準の Visual C++.vcprojファイルといくつか.cpp.hファイルを使用します。Windows 固有のものには依存しません。単純な C++ です。

を使用してすべてのファイルをコンパイルおよびリンクするために使用されるを生成するファイルを読み取る自家製のツールを使用して、Linux 上でコンパイルおよび実行できます。.vcprojMakefilemakeg++

問題は、Visual C++ 2010 (および 2012) では、プロジェクト ファイルの形式が変更されたことです。名前も から.vcprojに変更されました.vcxproj。私の自作ツールは、この新しいプロジェクト ファイルを読み取ってMakefile.

自家製のツールをアップグレードして新しいプロジェクト ファイルをサポートする代わりにxbuild、Linux 実行可能ファイルをコンパイルできるかどうか疑問に思っていました。

最初に自分の (VC++2008) プロジェクトをコンパイルしようとしましたがxbuild、自分のプロジェクトに不満がありis a VS2003 project, which is not supported by xbuild.ますが、この問題についてグーグルで検索するxbuildと、VS2005 プロジェクト ファイルをサポートするはずであることがわかりました。これらの古いプロジェクト ファイルをサポートするための参照もいくつかありますが、現在mdtoolは統合されてxbuildいるようです。

さらに、MSDN サイトから入手した Visual C++ 2010 の例 (HuoChess) をコンパイルしてみました。結果は

/Microsoft.Cpp.Default.props: Project file could not be imported, it was being
imported by [...] /HuoChessConsole/HuoChessConsole.vcxproj: Imported project:
"//Microsoft.Cpp.Default.props" does not exist.`

さて、これは、プロジェクト ファイルがコンパイラのルールMicrosoft定義を必要としているように見えます。代わりにこれらの定義を偽造して使用する必要がありますか? これどうやってするの?Cppgcc

私がやりたいことはこれまでに可能xbuildですか?

4

1 に答える 1