Estos días me he venido pegando con un error al instalar algunas librerías en una máquina con OS X 10.9 instalado. Ahora mismo me acaba de pasar al intentar instalar PyGame en un entorno virtual, así que aprovecho y os pongo la receta según lo voy haciendo.
Si al instalar una librería (e.g. pygame) a golpe de pip
o easy_install
da el siguiente error:
$ pip install hg+http://bitbucket.org/pygame/pygame Downloading/unpacking hg+http://bitbucket.org/pygame/pygame ... ... ... clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future] clang: note: this will be a hard error (cannot be downgraded to a warning) in the future error: command 'cc' failed with exit status 1 ---------------------------------------- Cleaning up...
Es decir, lo que viene a ser un «ZASCA!!», con exportar las siguientes variables de entorno la instalación funcionará:
$ export CPPFLAGS=-Qunused-arguments $ export CFLAGS=-Qunused-arguments $ pip install hg+http://bitbucket.org/pygame/pygame Downloading/unpacking hg+http://bitbucket.org/pygame/pygame ... ... ... Successfully installed pygame Cleaning up...
Y todos felices. Según me ha parecido entender, en una de las últimas actualizaciones (creo que en Marzo de este año), el compilador de C (clang
) cuando encuentra una flag desconocida lanza un error (en lugar de un warning como hacía antes). La flag -mno-fused-madd
es de GCC y debe ser que a clang
no le mola.
Que paséis buen fin de semana!