繁体   English   中英

我可以使用xbuild在Linux上编译Visual C ++项目吗?

[英]Can I compile a Visual C++ project on Linux using xbuild?

我有一个现有的项目,我使用Visual C ++ 2008和Debian Linux在Windows上编译。 该项目使用标准的Visual C ++ .vcproj文件,以及一些.cpp.h文件。 它不依赖于任何Windows特定的东西。 只是简单的C ++。

它在Linux上编译和运行良好,使用自制工具读取.vcproj文件以生成Makefile ,该Makefilemake一起使用以使用g++编译和链接所有文件。

麻烦的是,使用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.`

现在,这看起来像项目文件需要一些MicrosoftCpp编译器规则定义。 我应该伪造这些定义来使用gcc吗? 我怎样才能做到这一点?

我想用xbuild做什么?

没有理由重新发明轮子 - 只需使用gyp。 “GYP可以生成您的项目”或makefiles。 http://code.google.com/p/gyp/

有一个项目GCCBuild ,您可以使用它在Linux中构建vcxproj项目。 它只使用相同的vcxproj,但使用GCC进行编译和构建。 那里也有很多例子。

PS。 我是该项目的作者。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM