"不能打开包括文件:'config-赢。h':没有这样的文件或目录",同时安装mysql-蟒蛇

StackOverflow https://stackoverflow.com/questions/1972259

我试图安装mysql-蟒蛇在虚拟环境下使用画中画上窗。在第一个,我得到同样的错误 在这里报告, 但答案还为我工作了。现在我得到这个下面的错误:

_mysql.c(34) : Fatal error C1083: Cannot open include file: 'config-win.h': No such file or directory

如果我symlink(windows7资)以我定期(不是虚拟环境的)蟒蛇的网站-包/MySQLdb dir我

Error loading MySQLdb module: No module named _mysql

我而不是损失在这里。任何指点?

有帮助吗?

解决方案

更新为MySQL 5.5和配置-win.h不可见问题

在5.5配置双赢。实际上在窗口移动到连接器单独的文件夹。即不便,如:

C:\ Program Files文件\的MySQL \插头C 6.0.2 \包括

要解决这个问题一个不仅需要下载“开发位”(这实际上连接的连接的)还要修改MySQLdb的安装脚本添加包括文件夹。我做了一个快速肮脏的修复作为。

site.cfg:

# Windows connector libs for MySQL.
connector = C:\Program Files\MySQL\Connector C 6.0.2

在setup_windows.py找到行

include_dirs = [ os.path.join(mysql_root, r'include') ]:

和添加:

include_dirs = [ os.path.join(options['connector'], r'include') ]

后。

丑,但工程直到MySQLdb的作者将改变行为。


几乎忘了提。以相同的方式一个需要添加类似的附加条目库:

library_dirs = [ os.path.join(options['connector'], r'lib\opt') ]

即。您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' ]
...

其他提示

我所要做的就是去到Oracle和下载MySQL插头C 6.0.2(更新不起作用!的),并做了典型安装。

https://downloads.mysql.com/archives/cc/

一定要包括通过自定义的所有选装件(额外二进制文件)安装,没有这些就没有为win64.msi

工作

这项工作完成,我走进pycharms,并选择了MySQL的Python> = 1.2.4包安装,和它的工作很大。无需更新任何配置或类似的东西。这是对我工作的最简单的版本通过。

希望它帮助

所接受的解决方案似乎不再工作的较新版本mysql-蟒蛇。安装不再提供了一个 site.cfg 文件的编辑。

如果你正在安装mysql-蟒蛇会找 C:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\include.如果你有64位安装的MySQL,你可以简单地援引:

  1. 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"
  2. 运行 pip install mysql-python
  3. 删除象征性的链接建立在第1步

所接受的答案是出的日期。一些建议已经纳入包,我仍然得到错误,关于失踪配置赢。h&mysqlclient.lib。

  • 安装 mysql-连接-c-6.0.2-win32.msi

    那里有一个压缩文件的conenctor过但没有工作,因为 mysqlclient.liblib 目录而安装的期望 它在 lib/opt.而不是黑客攻击网站。cfg或setup_windows.py, msi做的工作。

  • pip安装mysql-蟒蛇

P.S.因为我不用MySQL了,我的回答可以出的日期。

我知道这个帖子是超级老了,但它仍然是即将到来的顶部谷歌打,所以我会加入一些对这个问题的详细信息。

我有同样的问题,OP,但没有建议的答案似乎为我工作。主要是因为“配置 - win.h”不存在于任何地方连接器安装文件夹。

我用的是最新的插头C 6.1.6因为这是什么由MySQL安装建议。

此但是似乎没有由最新的MySQL-Python包(1.2.5)来支持。当试图安装它,我可以看到,它明确地寻找C连接器6.0.2。

"-IC:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\include"

因此,通过从安装该版本 https://dev.mysql.com/downloads /文件/?ID = 378015 毫无问题安装Python包。

最可能的答案是,安装MySQL开发建立和选择"C headers\lib"选项,在配置。(据报道,在这项:建设MySQLdb为蟒蛇在窗户上rationalpie.wordpress.com)

也许甚至更好的解决办法是安装一个编译构建: http://www.technicalbard.com/files/MySQL-python-1.2.2.win32-py2.6.exe

如果PIP安装失败“MySQLdb的”,解决方法是下载和你的机器上,从这个链接先安装

http://www.lfd.uci.edu/~gohlke / pythonlibs /#的MySQL-蟒

那么所有的MySQL和_mysql复制*文件和目录从您的系统的Python到你的virtualenv目录:

c:\Python27\Lib\site-packages(或类似的路径到系统的Python)来 c:\my_virtenv\Lib\site-packages(路径到您的virtualenv)

我有很多头痛与MySQLdb的太

为什么不使用MySQL官方的Python连接器?

easy_install mysql-connector-python

或者你可以从这里下载: http://dev.mysql.com/downloads/connector/python/

文档: http://dev.mysql.com/doc/refman/5.5 /en/connector-python.html

安dev位mysql摆脱了 config-win.h 错我是有的,并把另一个。 Failed to load and parse the manifest. The system cannot find the file specified. 我现在回答我的问题,在此后: http://www.fuyun.org/2009/12/install-mysql-for-python-on-windows/.

我复制的文件'C:\Python26\Lib\distutils\msvc9compiler.py`为我的虚拟环境下,所作的编辑建议在上述链接,并且事工作的罚款。

<强>最简单的工作溶液:

下载的 MySQL的插头C 6.0.2从下面链路和安装。

http://dev.mysql.com/downloads/connector /c/6.0.html#downloads

安装的MySQL插头C 6.0.2后,复制文件夹 “的MySQL插头C 6.0.2”,从 “C:\ Program Files文件\ MySQL的” 到 “C:\程序文件(x86)\ MySQL的”

然后输入

pip install MySQL-python

它肯定会工作。

在我的情况下,我的定盘复制从MySQL连接器-C-6.0.2-win32.msi创建(从用户名引用在一前一后的缓冲液)的文件夹,它位于c:\ Program Files文件\ MySQL的\ MySQL的插头C 6.0.2和创造与程序文件(x86)的新路径和粘贴内容有因为安装不正确的32位和64位机之间的检查。

因此,新的路径是C:\程序文件(x86)\的MySQL \ MySQL的插头C 6.0.2。这是安装程序正在寻找路径,所以我粘贴的文件有帮助安装程序找到文件,这是造成失踪的配置,win.h

错误

尝试 ActivePython的

pypm -E C:\myvirtualenv install mysql-python

我没有遵循Bugagotti答案,它不会在我的窗口工作(Win7的64位,py27和MySQL连接器6.1安装有)为MySQL的Python-1.2.5,所以我做了MySQL中有的甚至肮脏的变化-python-1.2.5:

首先,site.cfg:

connector = C:\Program Files\MySQL\MySQL Connector C 6.1

二,_mysql.c:

#if defined(MS_WINDOWS)
#include <config-win.h>
#else
#include "my_config.h"
#endif

要:

#if 0 /*defined(MS_WINDOWS)*/
#include <config-win.h>
#else
#include "my_config.h"
#endif

和与这些变化,config_win.h问题将消失,但是仍然有一个环节的问题:

LINK : fatal error LNK1181: cannot open input file 'mysqlclient.lib'

有关这一点,我改变了setup_windows.py:

library_dirs = [ os.path.join(connector, r'lib\vs9') ]  ## the original value was r'lib\opt'

然后,它的工作最后。

我跟着明才沉的方法。

但是,在我的情况下,我改变了连接器到

connector = C:\Program Files\MySQL\MySQL Connector.C 6.1

和所述library_dirs改变为

library_dirs = [ os.path.join(connector, r'lib\vs10') ]

由于我没有vs9目录。它的工作原理,但我不知道为什么

我已经安装vs2012,并且连接器的lib目录只有vs10vs11,其中vs11不起作用。安装VCForPyhton27.mis我似乎支持vs9

无论如何,这工作。如果你想冒这个险,你可以试试。

解决方案,为我工作上 Windows:安装 32位和 64位版本的 MySQL接头/C6.0.2.打开 Command Prompt 和运行:

pip install mysql-python

对于我的以下办法解决这个问题(Python3.5.2;mysqlclient1.3.9):

  1. 下载最新的MySQL C连接器 http://dev.mysql.com/downloads/connector/c/ (对于我来说是Windows(86,64位),MSI安装)
  2. 复制 c:\Program Files\MySQL\MySQL Connector C 6.0.2\ 目录 c:\Program Files (x86)\MySQL\MySQL Connector C 6.1\
  3. 运行 pip install mysqlclient
  4. [可选择]删除 c:\Program Files (x86)\MySQL\MySQL Connector C 6.1\

这里的问题是,只有64位安装所有者,因为建立脚本,试图找到C连接包括在x86程序文件的目录。

building '_mysql' extension
creating build\temp.win-amd64-2.7
creating build\temp.win-amd64-2.7\Release
C:\Users\TimHuang\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -Dversion_info=(1,2,5,'final',1) -D__version__=1.2.5 "-IC:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\include" -Ic:\python27\include -Ic:\python27\PC /Tc_mysql.c /Fobuild\temp.win-amd64-2.7\Release\_mysql.obj /Zl
_mysql.c
_mysql.c(42) : fatal error C1083: Cannot open include file: 'config-win.h': No such file or directory

如果你看到这个当您尝试pip install mysql-python,最简单的方法是复制

C:\Program Files\MySQL\MySQL Connector C 6.0.2C:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2

我试图创建符号链接但Windows不断抛出我 C:\WINDOWS\system32>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" The system cannot find the path specified.

如果你在一个虚拟环境中是否使用Visual Studio或以其他方式这样做,试试 easy_install MySQL-python

  1. 下载这个

  2. 然后安装这名句的pip安装。Shift+右击中下载的文件夹和选择 Open powershell here.然后安装使用的命令: pip install package_name.whl

下载连接器的从https://dev.mysql.com/downloads/connector/c/6.0.html版本 对于我的情况下,我已经安装了64位连接器的和我的Python为32位。因此,我不得不从程序文件复制到MySQL的程序文件(86)

步骤Window10:

  • https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python
  • 下载版本根据python版和硬件的规格:对我的情况, mysqlclient‑1.4.2‑cp37‑cp37m‑win32.whl 工作python3.7和英特尔CPU。
  • 而你env仍然是激活,去下载文件夹和运行 pip install mysqlclient-1.4.2-cp37-cp37m-win32.whl
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top