我正在尝试使用pip导入适用于 Python 的MySQLCLIENT库,当我使用命令
时pip install mysqlclient
它返回错误:
Collecting mysqlclient
Using cached https://files.pythonhosted.org/packages/ec/fd/83329b9d3e14f7344d1cb31f128e6dbba70c5975c9e57896815dbb1988ad/mysqlclient-1.3.13.tar.gz
Installing collected packages: mysqlclient
Running setup.py install for mysqlclient ... error
Complete output from command c:usersastrinaappdatalocalprogramspythonpython36python.exe -u -c "import setuptools, tokenize;__file__='C:\Users\astrina\AppData\Local\Temp\pip-install-40l_x_f4\mysqlclient\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('rn', 'n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:UsersastrinaAppDataLocalTemppip-record-va173t5vinstall-record.txt --single-version-externally-managed --compile:
c:usersastrinaappdatalocalprogramspythonpython36libdistutilsdist.py:261: UserWarning: Unknown distribution option: 'long_description_content_type'
warnings.warn(msg)
running install
running build
running build_py
creating build
creating buildlib.win-amd64-3.6
copying _mysql_exceptions.py -> buildlib.win-amd64-3.6
creating buildlib.win-amd64-3.6MySQLdb
copying MySQLdb__init__.py -> buildlib.win-amd64-3.6MySQLdb
copying MySQLdbcompat.py -> buildlib.win-amd64-3.6MySQLdb
copying MySQLdbconnections.py -> buildlib.win-amd64-3.6MySQLdb
copying MySQLdbconverters.py -> buildlib.win-amd64-3.6MySQLdb
copying MySQLdbcursors.py -> buildlib.win-amd64-3.6MySQLdb
copying MySQLdbrelease.py -> buildlib.win-amd64-3.6MySQLdb
copying MySQLdbtimes.py -> buildlib.win-amd64-3.6MySQLdb
creating buildlib.win-amd64-3.6MySQLdbconstants
copying MySQLdbconstants__init__.py -> buildlib.win-amd64-3.6MySQLdbconstants
copying MySQLdbconstantsCLIENT.py -> buildlib.win-amd64-3.6MySQLdbconstants
copying MySQLdbconstantsCR.py -> buildlib.win-amd64-3.6MySQLdbconstants
copying MySQLdbconstantsER.py -> buildlib.win-amd64-3.6MySQLdbconstants
copying MySQLdbconstantsFIELD_TYPE.py -> buildlib.win-amd64-3.6MySQLdbconstants
copying MySQLdbconstantsFLAG.py -> buildlib.win-amd64-3.6MySQLdbconstants
copying MySQLdbconstantsREFRESH.py -> buildlib.win-amd64-3.6MySQLdbconstants
running build_ext
building '_mysql' extension
error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools
----------------------------------------
Command "c:usersastrinaappdatalocalprogramspythonpython36python.exe -u -c "import setuptools,
tokenize;__file__='C:\Users\astrina\AppData\Local\Temp\pip-install-
40l_x_f4\mysqlclient\setup.py';f=getattr(tokenize, 'open', open)
(__file__);code=f.read().replace('rn', 'n');f.close();exec(compile(code,
__file__, 'exec'))" install --record C:UsersastrinaAppDataLocalTemppip-
record-va173t5vinstall-record.txt --single-version-externally-managed --
compile" failed with error code 1 in C:UsersastrinaAppDataLocalTemppip-
install-40l_x_f4mysqlclient
我已经安装了Microsoft构建工具 2015,但问题仍然存在
您可能需要安装 Python 3 和 MySQL 开发标头和库,如下所示:对于 UBUNTU 或 Debian
sudo apt-get install python3-dev default-libmysqlclient-dev build-essential
红帽/CentOS
sudo yum install python3-devel mysql-devel
然后尝试
pip install mysqlclient
首先安装 python 3.6.5,然后运行
pip install mysqlclient==1.3.12
尝试从 wheel 下载并安装。记下您的python版本并下载正确的版本。
https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient
对我来说,这是旧设置工具和缺少包的混合体
pip install --upgrade setuptools
apt install gcc libssl-dev
安装下面的软件包,它将解决问题。
apt-get install python3-dev default-libmysqlclient-dev build-essential
试试点install --only-binary :all: mysqlclient
为我工作
首先尝试此命令
(正确保留空间,即点空间安装空间--仅二进制 空间:全部:空间MySQL客户端(
pip install --only-binary :all: mysqlclient
如果仍然错误,请尝试此操作... 转到这个网站 Python 扩展包,然后按 ctrl+F 并搜索 mysqlclient。你会发现一个这样的文件名。 Mysqlclient-1.4.5-cp38-cp38-win_amd64.whl
慎重选择---根据python版本( 有一个步骤来选择它。
cp38 表示 Python 3.8 版本,cp 37 表示 Python 3.6 版本,因此首先检查您的 Python 版本是 3.8、3.7、3.6、3.5、3.4,然后相应地下载。
amd64---在检查 Python 版本时还要检查您的 Python 是 64 位还是 32 位。 然后相应地选择。如果您的 python 是 32 位的,请选择 amd32。
否则您将面临问题。 然后下载文件并使用 pip 命令手动安装。 下面给出了以下步骤:-
下载后打开命令提示符并转到下载的文件可用的目录(或更好地剪切该文件并粘贴到桌面(并键入:
NOTE :- PLEASE TYPE AFTER DOWNLOAD THE FILE...
This is for python 3.8 and 64-bit
$ pip install mysqlclient‑1.4.5‑cp38‑cp38‑win_amd64.whl
For python 3.7 and 32-bit
$ pip install mysqlclient‑1.4.5‑cp37‑cp37m‑win32.whl
您可以显式设置 SSL 库路径。
LDFLAGS=-L/usr/local/opt/openssl/lib pip install mysqlclient
我在MacOS Catalina上遇到了一个类似的问题,用这个解决了:
ARCHFLAGS="-arch x86_64" pip3 install mysqlclient
如果你安装 python 64 位会更好。然后pip install mysqlclient
将确保工作,否则您可以按照以下步骤使用python扩展包进行安装
-
安装
build-essential
sudo apt-get install build-essential
-
安装
mysqlclient
pip install mysqlclient
当我从deadsnakes/ppa存储库安装python3.8并使用它创建virtualenv时,这发生在我身上。
上述解决方案对我不起作用,安装python3.8-dev
后安装成功。
sudo apt install python3.8-dev
然后
python3.8 -m pip install mysqlclient==1.3.12
我遇到了同样的问题,我以一种非常愚蠢的方式修复了这个问题。我刚刚卸载了python并通过Microsoft商店安装了它。