2009-02-06 4 views
10

J'essaye d'installer MySQLdb pour python sur Cygwin. Malheureusement, quand je lance python setup.py build, je reçois l'erreur suivante:Est-ce que quelqu'un a installé MySQLdb pour Python sur 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 

Il est clair que je n'ai pas mysql_config installé, que je suppose est le problème. Ceci est mentionné dans le fichier README pour MySQLdb, mais cela n'explique pas comment le contourner ou comment installer mysql_config.

Alors peut-être que c'est aussi simple que: Comment puis-je installer mysql_config pour Cygwin?

Ou peut-être que c'est plus difficile que ça.

FYI: J'ai python 2.5.2 et MySQL 5.1.30, fonctionnant sous Cygwin.

+0

vous avez installé des paquets de développement de MySQL? – nosklo

+0

Ah ... Non. Savez-vous où je peux les obtenir pour cygwin? – Ben

Répondre

2

Vous aurez besoin de mysql-devel, si c'est disponible pour cygwin, ou vous aurez besoin de construire mysql depuis la source.

Votre meilleur pari est probablement de compiler vous-même le client MySQL afin d'obtenir les en-têtes nécessaires pour compiler MySQLdb. Voir this note sur le pilote DB Perl similaire.

+0

Merci pour cela - je vais essayer! – Ben

1

J'ai suivi les instructions sur this comment pour installer MySQL sur Cygwin. J'ai dû utiliser la version 5.1.35, qui peut être téléchargée à partir de here, car la dernière version (5.1.41) n'a pas pu être compilée.

Voici la ligne de commande je:

./configure --without-libedit --without-readline --without-server CFLAGS = -O2`

2

Après avoir construit MySQL en suivant les instructions ci-dessus, vous ll faut effectuer les opérations suivantes pour construire et installer MySQLdb:

  1. Télécharger le package 'setuptools du Python here (exemple: setuptools-0.6c11-py2.6.egg). Vous en aurez besoin pour lancer setup.py qui est livré avec MySQL-python.
  2. Installez setuptools en suivant les instructions de la même page (il vous suffit de l'exécuter comme s'il s'agissait d'un script shell). Télécharger MySQL-python here (exemple: MySQL-python-1.2.3.tar.gz).
  3. Développez l'archive et vous trouverez les instructions d'installation dans le fichier README.
  4. Construire et installer MySQL-python en utilisant les instructions du fichier README.
+0

Cela a fonctionné pour moi, merci. J'ai trouvé que lors de l'installation de MySQL-python (installation de python setup.py) j'ai eu quelques erreurs de permission, dans ce cas vous avez juste besoin d'ouvrir récursivement les permissions sur le dossier d'installation (chmod -R 755) et il va installer correctement –

4

Comment je l'ai fait:

D'abord, j'installé apt-cyg. Avec cela:

# 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

moi beaucoup plus loin. Maintenant, je suis coincé avec quelques problèmes de compilation 'gcc'. http://stackoverflow.com/q/32969715/1245190 – guaka

2

Vous avez la même erreur après avoir essayé pip install mysql-python. J'ai Win7 x64 + Cygwin x86 2.830 + Django 1.5.5 + Python 2.7.

J'ai donc exécuté l'installation de Cygwin et téléchargé la bibliothèque de client de base de données libmysqlclient-devel: MySQL (développement) et cela l'a fait !!

3

d'abord, installez apt-Cyg:

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

Maintenant, utilisez apt-Cyg installer mysql-devel:

apt-cyg install libmysqlclient-devel 
Questions connexes