如何将Visual Studio 2008编译器设置为GNU GCC。我还可以将其专门用于项目吗?我没有找到任何确凿的答案。
谢谢。
答案 0 :(得分:5)
您无法直接使用编译器。
但是,您可以调用makefile而不是使用内置的构建系统。
mingw32-make
mingw32-make
的{{1}}创建一个makefile,其中包含3个目标:MinGWMakefile
,clean
和build
。如果你以前从未这样做过,这可能非常繁琐。Build Command Line: mingw32-make -f MinGWMakefile build ReBuild Command Line: mingw32-make -f MinGWMakefile rebuild Clean Command Line: mingw32-make -f MinGWMakefile clean
你需要转换gcc的输出,从:
rebuild
对此:
filename:line:message
我使用自定义C ++程序来做到这一点,但任何正则表达式工具都可以解决问题。
答案 1 :(得分:2)
为获得最佳效果,请使用GNU make,Visual Studio makefile项目以及您自己编写的工具。你的makefile是一个框架,它编译文件(使用文件列表的变量),你的工具解析.sln和.vcproj文件来生成这个文件列表。 makefile包含结果。只需要一点胶水和肘部油脂 - 你会花一天时间咒骂让人不愿意做你想做的事情,然后你就能让它发挥作用。一旦启动并运行,这种方法不需要太多维护。
您可以保持工具和makefile简单,只需将所有项目中的所有文件放入混合并链接结果,使用文件模式决定每个文件会发生什么,并将所有编译器选项放在makefile中。或者你可以更聪明,拉动#defines并包含项目中的路径,也可以添加一个Win32项目配置,makefile生成器用它来正确处理自定义构建步骤,排除文件,编译器选项等等。
简单方法应该满足最多,因为它允许任何人像往常一样向项目添加新文件,而不必关心makefile,同时使人们很难意外地更改不需要的设置改变。
我之前已经描述了这种方法(稍微详细一点):
Good techniques to use Makefiles in VisualStudio?
(一旦你设置它,它运行良好,并且在许多方面它实际上比通常的VS方法更方便,甚至在考虑到你现在可以使用其他编译器的事实之前。)
答案 2 :(得分:1)
您可以创建自定义makefile项目来为您解决此问题。
Visual Studio的主流方案是成为MS开发人员工具的IDE。在Windows下使用GNU工具进行编译的更常见方法是MinGW或Cygwin。
答案 3 :(得分:0)
使用外部构建系统。 (Makefile项目)。
答案 4 :(得分:-2)
据我所知,没有办法实现这一目标。 cl或多或少与Visual Studio集成。
我想如果你真的很绝望,你可以尝试创建一个预构建步骤来调用gcc,然后做一些事情来阻止Visual Studio构建的发生。