使用pip安装时出现错误

16
我不确定发生了什么,但每次使用pip安装东西时都会出现错误,错误信息如下:

命令 "/usr/bin/python -c "import setuptools, tokenize;__file__='/private/var/folders/b0/5843zgyj1yz3b8q2l7wrtj8h0000gn/T/pip-build-V4hy8S/PySocks/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/b0/5843zgyj1yz3b8q2l7wrtj8h0000gn/T/pip-bIOl7C-record/install-record.txt --single-version-externally-managed --compile" 失败,错误代码为1,路径为 /private/var/folders/b0/5843zgyj1yz3b8q2l7wrtj8h0000gn/T/pip-build-V4hy8S/PySocks


你尝试使用pip安装任何东西时都会出现这种情况吗? - hugos
7个回答

18

尝试

sudo pip install -U setuptools

如果这不能解决问题,那么

首先,你需要安装python-dev包,因为Pillow需要定义编译头文件。

sudo apt-get install python-dev

在Ubuntu 14.04上,您需要安装一些额外的软件包才能让Pillow正常工作。使用以下命令全部安装:

sudo apt-get install libtiff5-dev libjpeg8-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.6-dev tk8.6-dev python-tk


14

看起来你的 PiP 无法访问 Setuptools,正如错误中的 "import setuptools" 所示。首先尝试以下步骤,然后再尝试运行 pip 安装。

sudo pip install -U setuptools

Github Issue 中的解决方案


1
这是我在运行sudo pip install -U setuptools时得到的结果:目录'/Users/Name/Library/Caches/pip/http'或其父目录不属于当前用户,缓存已被禁用。请检查该目录的权限和所有者。如果使用sudo执行pip,则可能需要sudo的-H标志。 /Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/vendor/requests/packages/urllib3/util/ssl.py:90: InsecurePlatformWarning: 未提供真正的SSLContext对象... - lcm
尝试使用这个命令 'sudo -H pip install <app_name>' - Dusty Boshoff

3
在安装之前,请使用“以管理员身份运行”权限启动命令提示符。然后尝试运行此脚本 -
pip install package_name_here

如果出现错误,则导入安装工具

pip install -U setuptools

如果再次出现错误,请使用此脚本升级您的pip安装程序(在我的个人经验中起作用)。
python -m pip install --upgrade pip

1

我在Windows Git Bash上遇到了同样的问题,但安装setuptools并没有解决它。然后我注意到更上面有另一个错误信息:

building 'twisted.test.raiser' 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

那个链接已失效,但最终这个页面有一个正确下载链接: https://wiki.python.org/moin/WindowsCompilers 我安装了Visual Studio 2017的Microsoft Build工具,问题得到解决。

1
它主要取决于您想要安装的软件包类型。通常由于缺少libsasl2-dev,在Ubuntu版本中使用的身份验证抽象库package而导致失败。
首先,安装:
sudo apt-get install libsasl2-dev
然后运行: pip install <>

0
如果您在Windows上遇到此错误,就像我一样,只需以管理员身份运行命令行工具(cmd.exe或Powershell),然后再次尝试即可。

0

首次以超级用户身份运行:

sudo su

那么:

pip install PyOpenGL PyOpenGL_accelerate

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接