2009-08-14 177 views

回答

11

如果編譯時想使用gcc以外的編譯器,請將'CC =/path/to/compiler'作爲參數進行配置。 (也就是說,運行./configure CC = /路徑。不要使用表格CC = /路徑的./configure。)如果你想在默認的編譯器是gcc以外的東西,你可以把

 
CC=${CC-/path/to/default/compiler} 

在configure.ac之前調用AC _ PROG _ CC。

+0

這不是一個好方法。改爲使用freedrull建議的AC_PROG_CC。 – 2016-07-06 12:57:40

4

當然是了。您可以在configure.ac中配置默認​​編譯器,如果用戶想使用其他編譯器,他(或她)可以將它傳遞給./configure腳本。

你會在這裏找到更多關於它的:How to use autotools

這可能是你感興趣的部分是在頁面的中間:

#if a compiler is not specified by the user use intel compilers 
AC_PATH_PROG(CC_PATH, $CC, NO_PATH) 
if test "$CC_PATH" = NO_PATH; then 
CC="icc" 
fi 
+0

你就不能這樣做,因爲好: – freedrull 2011-02-24 05:45:31

2

通常你可以運行

bash $ CC=icc ./configure 

使用LCC,或任何其他編譯器的C編譯器,前提是配置和構建過程的其餘部分不使用任何gcc'ism。

+1

最好使用:$ ./configure CC = icc。如果您將CC作爲參數傳遞給configure,那麼使用config-status重新配置將會起作用。如果你在環境中設置CC,那麼它不會。 – 2009-08-15 12:05:42

9

我這樣做:

AC_PROG_CC([icc gcc]) 

這將尋找指定的順序編譯器,除非有一個參數覆蓋運行./configure

$ ./confgure CC=gcc