我有一个现有的项目,我可以在Windows上使用Visual C ++ 2008和Debian Linux进行编译。 该项目使用标准的Visual C ++ .vcproj
文件,以及一些.cpp
和.h
文件。 它不依赖于任何Windows特定的东西。 只是简单的C ++。
它在Linux上编译和运行良好,使用一个自制的工具读取.vcproj
文件,生成一个Makefile
,与make
一起使用,用g++
编译和链接所有文件。
麻烦的是,在Visual C ++ 2010(和2012)中,项目文件的格式已经改变。 即使名称已经从.vcproj
更改为.vcxproj
。 我自制的工具无法读取这个新的项目文件来生成Makefile
。
而不是升级自制工具来支持新的项目文件,我想知道如果xbuild
能够编译我的Linux可执行文件?
我试着编译我自己的(VC ++ 2008)项目,但是xbuild
抱怨说我的项目is a VS2003 project, which is not supported by xbuild.
然而,当search这个问题时,我发现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.`
现在,这看起来像项目文件需要一些微软 Cpp
编译器规则的定义。 我应该伪造这些定义来使用gcc
吗? 我怎样才能做到这一点?
我想用xbuild
做什么?
没有理由重新发明轮子 – 只使用gyp。 “GYP可以生成你的项目”或者makefiles。 http://code.google.com/p/gyp/