¿Cómo llego autotools para compilar con el compilador de Intel?
Pregunta
Quiero mi código para compilar con el compilador (s) de Intel o con gcc / g ++ en función de un argumento configure. es posible? ¿Qué necesito para poner en mi archivos Makefile.am configure.ac y para que esto suceda?
Solución
Si desea utilizar un compilador gcc que no sea cuando se compila, pase 'CC = / ruta / a / compilador' como un argumento para configurar. (Es decir, ejecutar ./configure CC = / ruta. No utilice el formulario ./configure CC = / ruta.) Si desea que el compilador por defecto a ser algo distinto de gcc, se puede poner
CC=${CC-/path/to/default/compiler}
en configure.ac antes de la invocación de AC_PROG_CC.
Otros consejos
Me gustaría hacer esto:
AC_PROG_CC([icc gcc])
Esto buscará los compiladores en el orden especificado, a menos que se modifique con un argumento a ./configure
$ ./confgure CC=gcc
Por supuesto que es. Se puede configurar un compilador por defecto en configure.ac y si el usuario quiere usar otro compilador, él (o ella) puede pasar al script ./configure
.
Encontrará más sobre esto aquí: Cómo usar autotools .
La parte que puede ser interesante para usted está en el medio de la página:
#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
Por lo general, sólo se puede ejecutar
bash $ CC=icc ./configure
para utilizar LCC, o cualquier otro compilador como el compilador de C, siempre que el resto del proceso de configuración y construir no utiliza ningún gcc'ism.