2009-10-02 19 views
67

Próbuję zainstalować wiązania mysql w virtualenv. Wolałbym użyć pip lub easy_install. pip podaje następujący błąd:virtualenv, mysql-python, pip: ktoś wie jak?

File "setup_posix.py", line 24, in mysql_config 

    raise EnvironmentError("%s not found" % (mysql_config.path,)) 

EnvironmentError: mysql_config not found 

easy_install albo pobiera 404 z sourceforge, albo daje mi bardzo podobny błąd.

Czy ktoś wie, jak obejść to w virtualenv?

Odpowiedz

89

Próbuję również ustawić powiązania MySQL w virtualenv. Wszystko, co musiałem zrobić, to zainstalować pakiet zawierający mysql_config. W systemie Ubuntu nazywa się libmysqlclient-dev.

Później mogłem wykonać (virtualenv'd) python setup.py build i python setup.py install.

+12

Aby to działało, musiałem także zainstalować program python-dev przed wykonaniem instalacji i instalacji pliku setup.py. –

+9

Po libmysqlclient-dev użyłem PIP do instalacji wiązania mysql: "instalacja pip MySQL-python" – stricjux

+6

Komentarz użytkownika anonimowego: Na Fedorze nazywa się 'mysql-devel', czyli' sudo yum install mysql-devel'. Następnie, 'pip install mysql-python' działa w virtualenv. – Anne

0

Nie można znaleźć mysql_config. Umieść na ścieżce katalog zawierający mysql_config i spróbuj ponownie.

+3

Dla mnie komendą do wykonania było: 'export PATH = $ PATH:/usr/local/mysql-5.5.24-osx10.6-x86_64/bin' na MAC OSX. Twój przebieg może się różnić, ale po prostu zrób 'locate mysql_config' i powinieneś być w biznesie. –

1

Możesz nie mieć mysql_config w ogóle, jeśli nie masz zainstalowanego odpowiedniego pakietu mysqlclient-dev OS.

Osobiście, dla pakietów, które wymagają rozległej kompilacji C, wolę instalować wersje w systemie OS, ponieważ miałem mniej problemów w ten sposób. Łatwiej jest zainstalować wersję mysql-python na wszystkich moich serwerach, niż instalować zależności kompilacji.

Na szczęście z mojego doświadczenia wynika, że ​​pakiety te są bardzo stabilne (mysql-python, PIL, lxml, itp.), Więc nie muszę ich przypinać do wersji.

To jednak uniemożliwia mi korzystanie z virtualenv --no-site-packages, co jest trochę denerwujące.

7

W systemie OS X użyłem Macports do zainstalowania MySQL, co spowodowało, że plik mysql_config nazywał się mysql_config5.

Więc zrobiłem: sudo ln -s mysql_config5 /opt/local/bin/mysql_config

A potem pobiegł pip install MySQL-python z virtualenv i wszystko było w porządku.