2012-08-02 14 views
10

Soy nuevo en Python y tengo problemas para compilar MySQLdb, en un intento de ejecutar Google AppEngine SDK. acabo actualizado desde Snow Leopard para Mountain Lion y he instalado la última XCode (4,4)Cómo instalar MySQLdb en Mountain Lion

He descargado http://sourceforge.net/projects/mysql-python/

python setup.py build 

i obtener la siguiente salida en el terminal

running build 
running build_py 
creating build 
creating build/lib.macosx-10.8-intel-2.7 
copying _mysql_exceptions.py -> build/lib.macosx-10.8-intel-2.7 
creating build/lib.macosx-10.8-intel-2.7/MySQLdb 
copying MySQLdb/__init__.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb 
copying MySQLdb/converters.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb 
copying MySQLdb/connections.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb 
copying MySQLdb/cursors.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb 
copying MySQLdb/release.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb 
copying MySQLdb/times.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb 
creating build/lib.macosx-10.8-intel-2.7/MySQLdb/constants 
copying MySQLdb/constants/__init__.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb/constants 
copying MySQLdb/constants/CR.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb/constants 
copying MySQLdb/constants/FIELD_TYPE.py -> build/lib.macosx-10.8-intel- 2.7/MySQLdb/constants 
copying MySQLdb/constants/ER.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb/constants 
copying MySQLdb/constants/FLAG.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb/constants 
copying MySQLdb/constants/REFRESH.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb/constants 
copying MySQLdb/constants/CLIENT.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb/constants 
running build_ext 
building '_mysql' extension 
creating build/temp.macosx-10.8-intel-2.7 
clang -fno-strict-aliasing -fno-common -dynamic -g -Os -pipe -fno-common -fno-strict-aliasing -fwrapv -mno-fused-madd -DENABLE_DTRACE -DMACOSX -DNDEBUG -Wall -Wstrict-prototypes -Wshorten-64-to-32 -DNDEBUG -g -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -pipe -Dversion_info=(1,2,3,'final',0) -D__version__=1.2.3 -I/usr/local/mysql/include -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c _mysql.c -o build/temp.macosx-10.8-intel-2.7/_mysql.o -Os -g -fno-common -fno-strict-aliasing -arch x86_64 
unable to execute clang: No such file or directory 
error: command 'clang' failed with exit status 1 

tanto de los siguientes directorios existen, no tengo idea de cómo resolver el problema con clang no pudiendo ejecutar ...

Respuesta

19

Parece que el sistema se queja de no poder encontrar clang, que se incluye en Command Line Tools de Xcode. ¿Has instalado la herramienta también?

puede instalarse por

  • abierto Xcode
  • Preferencia (Command + ,)
  • Components en la pestaña Download
0

Parece que no es la única cosa que usted necesita hacer, reviso el compilador de cc que no reconoce, y no está dirigiendo a la derecha file, googleando encontré que necesito cambiar algunos archivos para encontrarlo antes de compilarlo, no se detiene allí, ahora que su reconocimiento no está cargando las librerías DYDL ... ha sido realmente difícil encontrar una respuesta real solo para comenzar a trabajar con python.

0

Finalmente encontré que dice en el Léame que edite site.cfg y coloque allí la ubicación de mysql_config.

1

Si alguien está interesado en una forma rápida y fácil para Mac OS X 10.8:

que se supone que tiene XCode, es herramienta de línea de comandos, Python y MySQL instalado.

  1. Instalar PIP:

    sudo easy_install pip 
    
  2. Editar ~/.profile:

    nano ~/.profile 
    

    Copia y pega el siguiente dos líneas

    export PATH=/usr/local/mysql/bin:$PATH 
    export DYLD_LIBRARY_PATH=/usr/local/mysql/lib/ 
    

    Guardar y salir.Epílogos ejecutar el siguiente comando

    source ~/.profile 
    
  3. Instalar MySQLdb

    sudo pip install MySQL-python 
    

    Para probar si todo funciona bien sólo tratar

    python -c "import MySQLdb" 
    

funcionó como un encanto para mí. Espero que ayude.

+0

Esto funcionó para mí, excepto que utilicé .bash_profile en lugar de .profile – mlbright

Cuestiones relacionadas