2010-06-03 90 views

回答

55

你应该能够做这样的事情:

make CC=my_compiler 

这是假设谁写Makefile中的变量CC。

+0

谢谢。定时器用完时我会接受。 – 2010-06-03 19:53:24

23

您可以设置环境变量CCCXX,它们分别用于编译C和C++文件。默认情况下,他们所使用的值ccg++

+0

如果makefile文件写,除非你使用“-e”告诉做出让它这样做使用CC和CCX – 2010-06-03 19:50:47

+5

设置环境makefile中并没有明确的覆盖值。但它确实会覆盖默认值,而且很可能使用默认值。 – 2010-06-03 19:52:25

17

如果makefile与大多数makefile一样被编写,那么当它希望调用C编译器时,它使用$(CC)。无论如何,这就是内置规则的作用。如果你为该变量指定了一个不同的值,那么Make将会使用它。你可以在命令行上一个新值:

 
make CC=/usr/bin/special-cc 

您还可以指定,当您运行configure

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

配置脚本将纳入新CC值到它生成的生成文件,所以你不需要手动编辑它,此后你可以自己运行make(而不是每次都在命令行上给出自定义的CC值)。

1

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

Using Variables in Make