代码之家  ›  专栏  ›  技术社区  ›  Clark Gaebel

使GNU使用不同的编译器

  •  41
  • Clark Gaebel  · 技术社区  · 15 年前

    如何使GNU在不手动编辑makefile的情况下使用不同的编译器?

    5 回复  |  直到 15 年前
        1
  •  68
  •   jonescb Denis    15 年前

    您应该能够这样做:

    make CC=my_compiler
    

    假设编写makefile的人使用了变量cc。

        2
  •  23
  •   Michael Mrozek    15 年前

    您可以设置环境变量 CC CXX ,它们分别用于编译C和C++文件。默认情况下,它们使用值 cc g++

        3
  •  17
  •   Rob Kennedy    15 年前

    如果生成文件与大多数生成文件一样写入,则使用 $(CC) 当它希望调用C编译器时。不管怎样,这就是内置规则所做的。如果为该变量指定不同的值,则make将使用该值。可以在命令行上提供新值:

    make CC=/usr/bin/special-cc
    

    也可以在运行时指定 configure :

    ./configure CC=/usr/bin/special-cc
    

    配置脚本将包含新的 CC 它生成的makefile中的值,因此您不需要 手动 编辑它,你就可以运行 make 自那以后(而不是给予习俗 科科斯群岛 每次命令行上的值)。

        4
  •  6
  •   ladenedge    15 年前

    许多生成文件使用“cc”定义编译器。如果你有,你可以 override that variable 具有

    make CC='/usr/bin/gcc'
    
        5
  •  1
  •   Thomas Matthews    15 年前

    使用变量作为编译器程序名。
    将新定义传递给 make 在建造之前,在环境中使用或设置它们。

    Using Variables in Make