2009-02-06 23 views
10

Estoy tratando de instalar MySQLdb para Python en Cygwin. Por desgracia, cuando corro python setup.py build, me sale el siguiente error:¿Alguien ha instalado MySQLdb para Python en Cygwin?

$ python setup.py build 
/bin/sh: /usr/local/bin/mysql_config: No such file or directory 
Traceback (most recent call last): 
    File "setup.py", line 16, in <module> 
    metadata, options = get_config() 
    File "/home/Ben/python/MySQL-python-1.2.2/setup_posix.py", line 43, in get_config 
    libs = mysql_config("libs_r") 
    File "/home/Ben/python/MySQL-python-1.2.2/setup_posix.py", line 24, in mysql_config 
    raise EnvironmentError, "%s not found" % mysql_config.path 
EnvironmentError: /usr/local/bin/mysql_config not found 

Está claro que no tienen instalado mysql_config, que supongo que es el problema. Esto se menciona en el archivo README para MySQLdb, pero no explica cómo evitarlo o cómo instalar mysql_config.

Así que tal vez esto es tan fácil como: ¿Cómo puedo instalar mysql_config para Cygwin?

O tal vez es más difícil que eso.

FYI: Tengo python 2.5.2 y MySQL 5.1.30, que se ejecuta bajo Cygwin.

+0

se han instalado los paquetes de desarrollo de MySQL? – nosklo

+0

Ah ... No. ¿Sabes dónde puedo conseguirlos para cygwin? – Ben

Respuesta

2

Necesitarás mysql-devel, si está disponible para cygwin, o tendrás que compilar mysql desde el código fuente.

Probablemente su mejor opción sea simplemente compilar el cliente MySQL para obtener los encabezados necesarios para compilar MySQLdb. Consulte this note en el controlador Perl DB similar.

+0

¡Gracias por eso, lo intentaré! – Ben

1

Seguí las instrucciones en this comment para obtener MySQL instalado en Cygwin. Tuve que usar la versión 5.1.35, que se puede descargar desde here, ya que la última versión (5.1.41) no pudo compilarse.

Aquí es la línea de comandos utilicé:

./configure -sin-libedit -sin-readline -sin-servidor CFLAGS = -O2`

2

Después de construir MySQL siguiendo las instrucciones anteriores, que' Tendrá que hacer lo siguiente para construir e instalar MySQLdb:

  1. descargar el paquete '' setuptools la pitón here (ejemplo: setuptools-0.6c11-py2.6.egg). Necesitarás esto para ejecutar setup.py que viene con MySQL-python.
  2. Instale las herramientas de instalación usando las instrucciones en la misma página (solo ejecútelo como si fuera un script de shell).
  3. Descargar MySQL-python here (ejemplo: MySQL-python-1.2.3.tar.gz).
  4. Expanda el archivo y encontrará las instrucciones de instalación en el archivo README.
  5. Cree e instale MySQL-python siguiendo las instrucciones del archivo README.
+0

Esto funcionó para mí, gracias. Descubrí que al instalar MySQL-python (instalación de python setup.py) recibí algunos errores de permisos, en este caso solo necesita abrir los permisos de forma recursiva en la carpeta de instalación (chmod -R 755) y se instalará correctamente –

4

¿Cómo lo hice:

Primero instalado apt-cyg. Con eso:

# apt-cyg install gcc   # older name 
apt-cyg install gcc-core   # as of 2015 
apt-cyg install python-setuptools 
easy_install pip 
pip install -U mysql-python 
+0

Esto obtuvo yo mucho más. Ahora estoy atascado con algunos problemas de compilación 'gcc'. http://stackoverflow.com/q/32969715/1245190 – guaka

2

Tiene el mismo error después de intentar pip install mysql-python. Tengo Win7 x64 + Cygwin x86 2.830 + Django 1.5.5 + Python 2.7.

Así que ejecuté la configuración de Cygwin y descargué el libmysqlclient-devel: biblioteca de cliente de base de datos MySQL (desarrollo) y eso lo hizo.

3

En primer lugar, instalar apt-cyg:

lynx -source rawgit.com/transcode-open/apt-cyg/master/apt-cyg > apt-cyg` 
install apt-cyg /bin 

Ahora, utilice apt-cyg instalar mysql-devel:

apt-cyg install libmysqlclient-devel