首页 > 解决方案 > 鸡蛋碎片的 Pip 安装问题导致软件包的未知安装

问题描述

我收到了一台 MacBook Pro,需要确保我们的一些 Python 2.7 脚本可以在笔记本电脑上运行,而笔记本电脑可以在 Windows 机器上顺利运行。

MacBook 很旧,2008 年,OS X 10.11.6

我在这台笔记本电脑上使用 pip install 安装某些软件包时遇到问题,作为最后的手段,我在这里寻求帮助。首先,Python 2.7.10 已安装并运行顺利。Pip install 也可以,但不适用于所有软件包。首先,我安装了 python-vlc 包:

pip install python-vlc --user

完成没有错误。然后我运行我们的脚本,该脚本使用 import vlc 导入包

python script.py

导致

Traceback(最近一次调用最后一次):文件“script.py”,第 30 行,在 import vlc 文件“/Users/admin/Library/Python/2.7/lib/python/site-packages/vlc/init .py ”,行4、在 from vlc.helper import tell File "/Users/admin/Library/Python/2.7/lib/python/site-packages/vlc/helper.py",第4行,在import applescript File "/Users/admin/ Library/Python/2.7/lib/python/site-packages/applescript/ init .py",第 3 行,仅 导入 ImportError: No module named only

好像我只需要安装软件包:

pip install only --user

这导致

仅收集安装收集的包:仅例外:回溯(最近一次调用):文件“/Library/Python/2.7/site-packages/pip/_internal/cli/base_command.py”,第 143 行,主要状态 = self。运行(选项,参数)文件“/Library/Python/2.7/site-packages/pip/_internal/commands/install.py”,第 366 行,运行中使用_user_site=options.use_user_site,文件“/Library/Python/2.7/站点包/pip/_internal/req/ init.py”,第 49 行,在 install_given_reqs **kwargs 文件中“/Library/Python/2.7/site-packages/pip/_internal/req/req_install.py”,第 760 行,在安装中 use_user_site=use_user_site, pycompile=pycompile, File “/Library/Python/2.7/site-packages/pip/_internal/req/req_install.py”,第 382 行,在 move_wheel_files warn_script_location=warn_script_location,文件“/Library/Python/2.7/site-packages/pip/_internal/wheel .py”,第 326 行,在 move_wheel_files 中断言 info_dir,“%s .dist-info 目录未找到”% req AssertionError: only .dist-info directory not found

所以,尝试手动下载它

pip download only

导致

仅收集运行 setup.py (path:/private/var/folders/jp/6s5zvb6s0kb19qdgy33sbkf40000gq/T/pip-download-C2CG6U/only/setup.py) egg_info for package only产生项目名称未知的元数据。修复你的#egg=only 片段。 下载成功未知

我不太确定如何解决这个问题。如果我尝试继续安装,不管

pip install only-1.0.2.tar.gz --user

处理 ./only-1.0.2.tar.gz 为收集的包构建轮子:UNKNOWN Running setup.py bdist_wheel for UNKNOWN ... done 存储在目录中:/Users/admin/Library/Caches/pip/wheels/13/bb /2c/bbbba0f8e56cc66e91a845dc17f9ba7045e5871aa88062798f 成功构建 UNKNOWN 安装收集的包:UNKNOWN 找到现有安装:UNKNOWN 0.0.0 正在卸载 UNKNOWN-0.0.0:成功卸载 UNKNOWN-0.0.0 成功安装 UNKNOWN-0.0.0

导致此“未知”安装,因为它显示在 pip 列表中。现在,谷歌搜索显示有些人有同样的问题,他们可以通过更新 setuptools 来解决它。这台笔记本电脑上的 setuptools 版本是 1.1.6,所以我尝试更新它

pip install setuptools --upgrade --user

收集 setuptools 使用缓存的https://files.pythonhosted.org/packages/82/a1/ba6fb41367b375f5cb653d1317d8ca263c636cff6566e2da1b0da716069d/setuptools-40.5.0-py2.py3-none-any.whl applescript 0.0.1 只需要,未安装。 applescript 0.0.1 需要 temp,但未安装。 安装收集的包:setuptools 安装成功 setuptools-40.5.0

它说它成功安装了 setuptools 40.5,但它没有因为 pip 列表保持不变。我回到第一方,因为我只需要安装包(和临时),但这会导致“未知”安装。Applescript 是 0.0.1 版。我无法升级它,因为它仅尝试安装软件包,但失败了。

我的猜测是,我需要在仅安装(和临时)包时解决 egg-info 问题,但我不知道如何解决。有谁知道如何解决这个安装问题?

标签: pythonmacospython-2.7pip

解决方案


我跑了这个

pip install setuptools --upgrade

...然后在我安装 #egg\UNKNOWN 软件包时再次安装。


推荐阅读