如何在Visual Studio 2008中设置GNU G ++编译器

时间:2010-08-03 19:52:59

标签: c++ visual-studio-2008 compiler-construction g++ gnu

如何将Visual Studio 2008编译器设置为GNU GCC。我还可以将其专门用于项目吗?我没有找到任何确凿的答案。

谢谢。

5 个答案:

答案 0 :(得分:5)

您无法直接使用编译器。

但是,您可以调用makefile而不是使用内置的构建系统。

配置示例:


  1. 安装MinGW(我猜这一步已经完成),包括mingw32-make
  2. 为名为mingw32-make的{​​{1}}创建一个makefile,其中包含3个目标:MinGWMakefilecleanbuild。如果你以前从未这样做过,这可能非常繁琐。
  3. 为您的项目创建新配置
  4. 转到配置属性 - > general->配置类型,然后选择“makefile”
  5. 转到配置属性 - > NMake,并使用以下命令行:    
    Build Command Line: mingw32-make -f MinGWMakefile build
    ReBuild Command Line: mingw32-make -f MinGWMakefile rebuild
    Clean Command Line: mingw32-make -f MinGWMakefile clean

  6. 在编译器消息上启用“转到行”功能:


    你需要转换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构建的发生。