Python 3.7, Failed building wheel for MySql-Python

   日期:2024-01-17     浏览:51    评论:0    

https://stackoverflow.com/questions/51117503/python-3-7-failed-building-wheel-for-mysql-python

 

I am new to python and I am trying django framework that involves some MySql and ran into this error when try to do pip install mysqlclient and down the lines of cmd messages I got this.

 Failed building wheel for mysqlclient Running setup.py clean for mysqlclient Failed to build mysqlclient Installing collected packages: mysqlclient Running setup.py install for mysqlclient ... error Complete output from command c:\users\ronanl~1\envs\py1\scripts\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\RONANL~1\\AppData\\Local\\Temp\\pip-install-pkbqy3t3\\mysqlclient\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\RONANL~1\AppData\Local\Temp\pip-record-moxwf7lu\install-record.txt --single-version-externally-managed --compile --install-headers c:\users\ronanl~1\envs\py1\include\site\python3.7\mysqlclient: running install running build running build_py creating build creating build\lib.win32-3.7 copying _mysql_exceptions.py -> build\lib.win32-3.7 creating build\lib.win32-3.7\MySQLdb copying MySQLdb\__init__.py -> build\lib.win32-3.7\MySQLdb copying MySQLdb\compat.py -> build\lib.win32-3.7\MySQLdb copying MySQLdb\connections.py -> build\lib.win32-3.7\MySQLdb copying MySQLdb\converters.py -> build\lib.win32-3.7\MySQLdb copying MySQLdb\cursors.py -> build\lib.win32-3.7\MySQLdb copying MySQLdb\release.py -> build\lib.win32-3.7\MySQLdb copying MySQLdb\times.py -> build\lib.win32-3.7\MySQLdb creating build\lib.win32-3.7\MySQLdb\constants copying MySQLdb\constants\__init__.py -> build\lib.win32-3.7\MySQLdb\constants copying MySQLdb\constants\CLIENT.py -> build\lib.win32-3.7\MySQLdb\constants copying MySQLdb\constants\CR.py -> build\lib.win32-3.7\MySQLdb\constants copying MySQLdb\constants\ER.py -> build\lib.win32-3.7\MySQLdb\constants copying MySQLdb\constants\FIELD_TYPE.py -> build\lib.win32-3.7\MySQLdb\constants copying MySQLdb\constants\FLAG.py -> build\lib.win32-3.7\MySQLdb\constants copying MySQLdb\constants\REFRESH.py -> build\lib.win32-3.7\MySQLdb\constants running build_ext building '_mysql' extension creating build\temp.win32-3.7 creating build\temp.win32-3.7\Release C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX86\x86\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Dversion_info=(1,3,13,'final',0) -D__version__=1.3.13 "-IC:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" "-Ic:\users\ronan lina\appdata\local\programs\python\python37-32\include" "-Ic:\users\ronan lina\appdata\local\programs\python\python37-32\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\ATLMFC\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\include" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\cppwinrt" /Tc_mysql.c /Fobuild\temp.win32-3.7\Release\_mysql.obj /Zl _mysql.c _mysql.c(29): fatal error C1083: Cannot open include file: 'mysql.h': No such file or directory error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Tools\\MSVC\\14.14.26428\\bin\\HostX86\\x86\\cl.exe' failed with exit status 2 > > > Command "c:\users\ronanl~1\envs\py1\scripts\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\RONANL~1\\AppData\\Local\\Temp\\pip-install-pkbqy3t3\\mysqlclient\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\RONANL~1\AppData\Local\Temp\pip-record-moxwf7lu\install-record.txt --single-version-externally-managed --compile --install-headers c:\users\ronanl~1\envs\py1\include\site\python3.7\mysqlclient" failed with error code 1 in C:\Users\RONANL~1\AppData\Local\Temp\pip-install-pkbqy3t3\mysqlclient\

anyone knows how to fix this ?

python mysql django python-3.x mysql-python share improve this questionfollow edited  Jun 30 '18 at 20:11 Eugene Primako 2,50688 gold badges2020 silver badges3232 bronze badges asked  Jun 30 '18 at 18:27 ronan 21911 gold badge22 silver badges1010 bronze badges
  •   This might help: stackoverflow.com/a/4290261/747744 – Eugene Primako Jun 30 '18 at 18:51
  • 7 I can’t help with building the wheel for Python 3.7, but if you just want to use Python 3 with mysqlclient, then pip install mysqlclient==1.3.12 With Python 3.6 should install a prebuilt wheel without any issues. – Alasdair Jun 30 '18 at 20:18 
  • 1 You could try this unofficial wheel lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient – iklinac Jun 30 '18 at 21:07
  • 2 Glad you got it working. It’s best to use the latest 3.6.x, to make sure you get the latest bug and security fixes. – Alasdair Jul 1 '18 at 14:38
  • 2 pip install mysqlclient==1.3.12 helped me.I was in python 3.7, then uninstalled that and installed python 3.6.5. Then that command worked for me – Shamsul Arefin Sajib Aug 5 '18 at 15:56
show  1 more comment

10 Answers

ActiveOldestVotes 12

I installed the following library on Ubuntu and after that, the issue got resolved.

sudo apt-get install libssl-dev

and then I was able to install mysqlclient using the following command

pip install mysqlclient
share improve this answerfollow edited  Jan 6 at 10:33 Antu 1,34511 gold badge1313 silver badges2424 bronze badges answered  Jan 2 at 7:23 Junaid 48988 silver badges2222 bronze badges add a comment 4

currently the mysql-connector for python 3.7 is not available in official wesite but u can fix this issue by installing wheel with specific windows and python version. this solutionpip install (ex/dir)/mysqlclient-1.3.13-cp37-cp37m-win_amd64.whl for win 64-bi and python 3.7

check the link below and download the specific wheel for your system. download and install the wheel for specific version by using "pip install (full path with file name in my case ex:-"pip install C:\Users\%user%\Downloads\mysqlclient-1.3.13-cp37-cp37m-win_amd64.whl")

share improve this answerfollow answered  Oct 4 '18 at 11:24 Bhavishya Prasad BfutureP 4133 bronze badges add a comment 3

You need to install the following dependencies before installing mysqlclient for python 3.7 in your system.

sudo apt-get install python3.7-dev default-libmysqlclient-dev

I hope this will help you.

share improve this answerfollow answered  May 22 '19 at 7:33 PyMaster 71144 silver badges1010 bronze badges
  •   worked in ubuntu 19.04 with python 3.7.3 and pip 19.1.1. – aasmpro Jun 1 '19 at 13:08
  •   After this I ran this too pip install mysqlclient. – Imran Zahoor Jun 20 '19 at 15:48 
add a comment 2

As of 2019, here is how to run smoothly pip install mysqlclient on MacOS:

brew info openssl and follow the commands at the bottom

 echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.zshrc

Other approaches:

  • brew install/upgrade/reinstall mysql : did not fix the issue for me, but has the nice side effect to make sure your installation is clean.
  • brew install mysql-connector-c : to make that work you have to unlink mysql, which ruins your setup and it did not fix the issue for me.
share improve this answerfollow answered  Jun 27 '19 at 10:37 louis_guitton 2,0961616 silver badges2121 bronze badges add a comment 1

You have to install "mysqlclient-1.4.1-cp37-cp37m-win32.whl" (32bit) file

  1. Download 32bit file from https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient
  2. if your file is in Downloads folder write the command in your cmd

    i. cd C:\Users\Nour Noby\Downloads ["Nour Noby" should be changed ]

    ii. pip install mysqlclient-1.4.1-cp37-cp37m-win32.whl ["mysqlclient-1.4.1-cp37-cp37m-win32.whl" should be replaced with your downloaded filename ].

share improve this answerfollow answered  Feb 21 '19 at 6:43 Nour Noby 5933 bronze badges add a comment 1

ensuring you have had done the needful with python...

and installing on the global level... (not virtual environment)

sudo apt-get install mysql-server pip install --upgrade setuptools

I had come across the same problem, because I installed default Python2.7.15, and python3 would break even after doing the needful for Python (being python2)

something that worked for me was (effectively the last one is what made it work, but i think they were equally required on my virtualenvironment with python3)

sudo apt-get install libmysqlclient-dev sudo apt-get install python3-pymysql sudo apt-get install python3.6-dev

python3.7 in your case in the virtualenv

I also had to go through..

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服