sat*_*ace 73 python windows pip virtualenv mysql-python
我正在尝试使用pip on windows在virtualenv中安装mysql-python.起初,我在这里报告了相同的错误,但答案也适用于我.现在我收到以下错误:
_mysql.c(34) : Fatal error C1083: Cannot open include file: 'config-win.h': No such file or directory
Run Code Online (Sandbox Code Playgroud)
如果我symlink(Win7)到我的常规(不是virtualenv's)python的site-packages/MySQLdb dir我得到
Error loading MySQLdb module: No module named _mysql
Run Code Online (Sandbox Code Playgroud)
我在这里相当茫然.有什么指针吗?
Kev*_*sel 89
我所要做的只是转到oracle,然后下载MySQL Connector C 6.0.2(更新版本不起作用!)并进行典型安装.
旧链接(未找到页面)
http://dev.mysql.com/downloads/connector/c/6.0.html#downloads
新链接
https://downloads.mysql.com/archives/cc/
确保通过自定义安装包含所有可选附加功能(额外二进制文件),但这些不适用于win64.msi
完成后,我进入了pycharms,选择了MySQL-python> = 1.2.4软件包进行安装,效果很好.无需更新任何配置或类似的任何内容.这是我完成的最简单的版本.
希望能帮助到你
Gil*_*ili 25
已接受的解决方案似乎不再适用于较新版本的mysql-python.安装程序不再提供site.cfg要编辑的文件.
如果你正在安装mysql-python它会寻找C:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\include.如果你有一个64位的MySQL安装,你可以简单地调用:
mklink /d "C:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\include" "C:\Program Files\MySQL\MySQL Connector C 6.0.2\include"pip install mysql-pythonBug*_*tti 18
更新mysql 5.5和config-win.h不明显的问题
在5.5配置中.实际上已经移动到Windows中的Connector单独文件夹.即smth喜欢:
C:\ Program Files\MySQL\Connector C 6.0.2\include
要解决这个问题,不仅需要下载"dev bits"(实际上连接连接器),还需要修改mysqldb安装脚本以添加include文件夹.我做了一个快速的脏修复.
site.cfg:
# Windows connector libs for MySQL.
connector = C:\Program Files\MySQL\Connector C 6.0.2
Run Code Online (Sandbox Code Playgroud)
在setup_windows.py中找到该行
include_dirs = [ os.path.join(mysql_root, r'include') ]:
Run Code Online (Sandbox Code Playgroud)
并添加:
include_dirs = [ os.path.join(options['connector'], r'include') ]
Run Code Online (Sandbox Code Playgroud)
在它之后.
丑陋,但直到mysqldb作者将改变行为.
差点忘了提.以同样的方式,需要为lib添加类似的附加条目:
library_dirs = [ os.path.join(options['connector'], r'lib\opt') ]
Run Code Online (Sandbox Code Playgroud)
即你的setup_windows.py看起来非常像:
...
library_dirs = [ os.path.join(mysql_root, r'lib\opt') ]
library_dirs = [ os.path.join(options['connector'], r'lib\opt') ]
libraries = [ 'kernel32', 'advapi32', 'wsock32', client ]
include_dirs = [ os.path.join(mysql_root, r'include') ]
include_dirs = [ os.path.join(options['connector'], r'include') ]
extra_compile_args = [ '/Zl' ]
...
Run Code Online (Sandbox Code Playgroud)
use*_*ser 15
接受的答案已过时.一些建议已经包含在包中,我仍然得到关于缺少config-win.h和mysqlclient.lib的错误.
安装mysql-connector-c-6.0.2-win32.msi
还有一个用于连接器的zip文件,但由于
mysqlclient.lib在lib目录中而安装程序需要它,因此无效lib/opt.msi完成了这项工作,而不是破解site.cfg或setup_windows.py.
pip install mysql-python
PS由于我不再使用MySQL,我的答案也可能已经过时了.
jim*_*mmy 11
我知道这篇文章已经超级老了,但它仍然会成为谷歌的热门话题,所以我会在这个问题上添加更多信息.
我遇到了与OP相同的问题,但没有一个建议的答案似乎对我有用.主要是因为"config-win.h"在连接器安装文件夹中的任何地方都不存在.
我正在使用最新的Connector C 6.1.6,因为这是MySQL安装程序的建议.
然而,最新的MySQL-python软件包(1.2.5)似乎并不支持这一点.在尝试安装它时,我可以看到它明确地在寻找C Connector 6.0.2.
"-IC:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\include"
Run Code Online (Sandbox Code Playgroud)
所以从https://dev.mysql.com/downloads/file/?id=378015安装这个版本安装的python包没有任何问题.
最有可能的答案是在配置期间安装MySQL Developer Build并选择"C headers\libs"选项.(如本条目所述:在rationalpie.wordpress.com上的Windows上为Python构建MySQLdb)
也许更好的解决方案是安装预编译的版本:http://www.technicalbard.com/files/MySQL-python-1.2.2.win32-py2.6.exe
如果pip无法安装"MySQLdb",则解决方法是首先从此链接下载并在您的计算机上安装它
http://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python
然后将系统Python中的所有MySQL*和_mysql*文件和目录复制到您的Virtualenv目录:
c:\Python27\Lib\site-packages (或类似的系统Python c:\my_virtenv\Lib\site-packages路径)到
(virtualenv的路径)
| 归档时间: |
|
| 查看次数: |
110181 次 |
| 最近记录: |