如题,现在有个文件可以用Cygwin的gcc编译,有没有可能把VC的编译器替换成gcc?像Intel C++ Compiler那样不是学计算机的,求教各位了,谢谢

解决方案 »

  1.   

    当然可以,IDE底层还是调用命令行的,如果编译器文件名和参数一样的话,改一下搜索路径就可以了。但是不同编译器的命令行开关不一样
    不同编译器的输出不一样。VC使用文件路径(行号)这种方法来帮助定位文件。一个简单的方法是,自己写一个编译器中转程序,来转换编译器参数和输出。另一个方法是使用Custom Build自己设置一下命令行。
      

  2.   

    感谢jiangsheng回复,是不是可以提供一个相关例子,因为我对编译器开关之类几乎一无所知,现在在研究一个PETSc的偏微分方程包,不得不用到这方面的东西,谢谢
      

  3.   

    GCC的网站上说VC++的命令行接口是不被支持的。我对GCC的命令行开关也不了解,也不知道又没有相关例子。
    我不知道你要研究的到底是什么,有何必要一定要用GCC。如果代码遵循C++标准,那么在任何一个支持C++标准的编译器下都可以编译。VC 2003的编译器的标准支持已经比较不错了。
      

  4.   

    改gcc实在比较困难,抓点gcc的man给你看看你就知道了       Overall Options
                  -c -S -E -o file -pipe -v -x language       Language Options
                  -ansi -fall-virtual -fcond-mismatch -fdollars-in-identifiers
                  -fenum-int-equiv -fexternal-templates -fno-asm -fno-builtin
                  -fhosted -fno-hosted -ffreestanding -fno-freestanding
                  -fno-strict-prototype -fsigned-bitfields -fsigned-char
                  -fthis-is-variable -funsigned-bitfields -funsigned-char
                  -fwritable-strings -traditional -traditional-cpp -trigraphs       Warning Options
                  -fsyntax-only -pedantic -pedantic-errors -w -W -Wall
                  -Waggregate-return -Wcast-align -Wcast-qual -Wchar-subscript
                  -Wcomment -Wconversion -Wenum-clash -Werror -Wformat
                  -Wid-clash-len -Wimplicit -Wimplicit-int
                  -Wimplicit-function-declaration -Winline -Wlong-long -Wmain
                  -Wmissing-prototypes -Wmissing-declarations -Wnested-externs
                  -Wno-import -Wparentheses -Wpointer-arith -Wredundant-decls这么多的选项需要和VC++的cl对应,你能一个一个调过来么?另外gcc仅仅是一个c编译器,并不是C++编译器,如果你要编译C++代码的话,还需要再用g++才行,这样就非常非常麻烦了……