Python: Как установить mysqldb на Windows 7 x64? - PullRequest
18 голосов
/ 12 марта 2011

Я пытаюсь установить Mysql-python на windows x64 .

Я установил python x64 , setuptools (проверено на leaf lib, успешно установлено), но я не могу установить mysqldb, Я пытаюсь выполнить

C: \ Users \ Fedcomp \ Desktop \ листовую-0.4 \ MySQL-питон-1.2.3> питона setup.py установить

но поймайте это

In file included from _mysql.c:34:
D:\servers\xampp_server\xampp\mysql\include/config-win.h:211:1: warning: "finite
" redefined
D:\servers\xampp_server\xampp\mysql\include/config-win.h:164:1: warning: this is
 the location of the previous definition
D:\servers\xampp_server\xampp\mysql\include/config-win.h:277:1: warning: "HAVE_S
TDDEF_H" redefined
In file included from D:\Python27\include/Python.h:8,
                 from pymemcompat.h:10,
                 from _mysql.c:29:
D:\Python27\include/pyconfig.h:673:1: warning: this is the location of the previ
ous definition
error: command 'gcc' failed with exit status 1

также пытается с msvc, но поймать это (установлен MS Visual Express)

C:\Users\Fedcomp\Desktop\leaf-0.4\MySQL-python-1.2.3>python setup.py install bui
ld --compiler=msvc
running install
running bdist_egg
running egg_info
writing MySQL_python.egg-info\PKG-INFO
writing top-level names to MySQL_python.egg-info\top_level.txt
writing dependency_links to MySQL_python.egg-info\dependency_links.txt
reading manifest file 'MySQL_python.egg-info\SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching 'MANIFEST'
warning: no files found matching 'ChangeLog'
warning: no files found matching 'GPL'
writing manifest file 'MySQL_python.egg-info\SOURCES.txt'
installing library code to build\bdist.win-amd64\egg
running install_lib
running build_py
copying MySQLdb\release.py -> build\lib.win-amd64-2.7\MySQLdb
running build_ext
building '_mysql' extension
error: Unable to find vcvarsall.bat

Как правильно установить mysqldb на windows x64? (заголовки из исходной установки mysql, потому что на сервере xampp их нет)

Или кто-то может скомпилировать mysqldb для windows python x64 или python x86 ?

Ответы [ 3 ]

35 голосов
/ 12 марта 2011

РЕДАКТИРОВАТЬ : mysqlclient имеет двоичные пакеты как для 32-разрядных, так и для 64-разрядных на PyPI . Это форк MySQL-python, который не выпускался с 2014 года.

Оригинальный ответ, оставленный для потомков:

Вы можете найти двоичные установщики здесь (Python 2.6-3.2), здесь (2.7) или здесь (2.6). Обратите внимание, что вам не нужно использовать 64-битный Python на Windows x64. Вы также можете использовать 32-битную сборку Python, для которой существует больше готовых сторонних пакетов.

2 голосов
/ 12 марта 2011

Я не уверен на 100%, но я думаю, что виноваты твои переменные пути.Кажется, компилятор не найден, запустите поиск vcvarsall.bat и дважды щелкните по нему, он должен правильно установить переменные пути.А затем попробуйте снова установить пакет.Если вы не можете найти vcvarsall.bat, переустановите MS Visual Express снова.

1 голос
/ 12 марта 2011

«Невозможно найти vcvarsall.bat» означает, что на вашем пути нет необходимых каталогов Visual Studio.

Однако, если вы используете 64-битный Python, вам понадобится 64-битный компилятор, а Express не поставляется с 64-битными версиями. Вы можете скачать компилятор SDK MSVC и настроить его, но это очень тяжелая работа.

Если бы я был вами, я бы переключился на 32-битный Python, и вы почти наверняка могли бы получить готовые двоичные файлы.

EDIT

Готовые 64-битные двоичные файлы, найденные piquadrat, будут еще проще!

...