我正在使用以下requirements.txt
文件在Ubuntu 12.04中安装多个Python包:
numpy>=1.8.2,<2.0.0
matplotlib>=1.3.1,<2.0.0
scipy>=0.14.0,<1.0.0
astroML>=0.2,<1.0
scikit-learn>=0.14.1,<1.0.0
rpy2>=2.4.3,<3.0.0
和这两个命令:
$ pip install --download=/tmp -r requirements.txt
$ pip install --user --no-index --find-links=/tmp -r requirements.txt
(第一个下载软件包,第二个安装软件包)。
该过程经常因错误而停止:
Could not find a version that satisfies the requirement <package> (from matplotlib<2.0.0,>=1.3.1->-r requirements.txt (line 2)) (from versions: )
No matching distribution found for <package> (from matplotlib<2.0.0,>=1.3.1->-r requirements.txt (line 2))
我手动修复:
pip install --user <package>
然后再次运行第二个pip install
命令。
但这仅适用于 特定包。当我再次运行第二个pip install
命令时,该进程现在停止抱怨另一个所需的包,我需要再次重复该过程,即:手动安装新的所需包(使用上面的命令)然后运行第二个pip install
命令。
到目前为止,我不得不手动安装six
,pytz
,nose
,现在它抱怨需要mock
。
有没有办法告诉pip
自动安装所有所需的依赖项,所以我不必逐个手动安装?
添加:这只发生在Ubuntu 12.04 BTW中。在Ubuntu 14.04中,pip install
文件上应用的requirements.txt
命令可以正常运行。
答案 0 :(得分:35)
这种方法(在目录中具有所有依赖关系而不从索引下载)仅在目录包含所有包时才有效。因此,该目录应包含所有依赖项,但也包含这些依赖项所依赖的所有包(例如six
,pytz
等。)
因此,您应该在requirements.txt
中手动包含这些内容(以便第一步明确下载它们),或者您应该使用PyPI安装所有包,然后pip freeze > requirements.txt
来存储所需的所有包的列表。< / p>
答案 1 :(得分:13)
我已经安装了python3,但/ usr / bin / python中的python仍然是旧的2.7版本
此方法有效(在我的情况下,<pkg>
是pyserial
)
python3 -m pip install <pkg>
答案 2 :(得分:4)
尽管它并不能真正回答这个特定问题。其他人也收到与此错误相同的错误消息。
对于那些像我这样最初忘记了-r
的人:使用pip install -r requirements.txt
-r
对于命令至关重要。
原始答案:
答案 3 :(得分:2)
尝试使用以下命令通过powershell安装flask。
[Common] _BSMachError: port b43b; (os/kern) invalid capability (0x14) "Unable to insert COPY_SEND"
[Common] _BSMachError: port b43b; (os/kern) invalid name (0xf) "Unable to deallocate send right"
这将允许安装以避免环境变量和用户配置。
答案 4 :(得分:2)
经过2个小时的搜索,我找到了一种方法来解决它只需一行命令。您需要知道软件包的版本(只需搜索PACKAGE版本)。
命令:
python3 -m pip install --pre --upgrade PACKAGE==VERSION.VERSION.VERSION
答案 5 :(得分:2)
并非总是如此,但是在某些情况下,该软件包已经存在。例如-getpass。它未在“点子列表”中列出,但可以导入和使用:
如果我尝试通过pip install getpass进行安装,则会出现以下错误: “找不到满足要求getpass的版本”
答案 6 :(得分:2)
如果您在工作场所遇到此问题。这可能是您的解决方案。
class Custom extends Object {
custom() {}
}
let custom = new Custom();
custom.foo = "bar";
console.log(custom.constructor.name, custom);
// Custom {"foo": "bar"}
// naive method:
let objVanilla = {}
console.log(objVanilla.constructor.name, objVanilla);
// Object {}
// safe method:
objSafe = Object.create(Object.getPrototypeOf(custom), {});
console.log(objSafe.constructor.name, objSafe);
// Custom {}
答案 7 :(得分:1)
从 pypi.org 安装 Pip。
pip install -U -i https://pypi.org/simple package
答案 8 :(得分:1)
仅提醒您此错误是谁发给Google的,就在这里
假设我收到此错误:
$ python3 example.py
Traceback (most recent call last):
File "example.py", line 7, in <module>
import aalib
ModuleNotFoundError: No module named 'aalib'
因为它提到了aalib
,所以有人认为我可以尝试aalib
:
$ python3.8 -m pip install aalib
ERROR: Could not find a version that satisfies the requirement aalib (from versions: none)
ERROR: No matching distribution found for aalib
但是实际上错误的软件包名称,请确保pip search
(在撰写本文时,service disabled)或google,或搜索pypi site以获取首先输入正确的软件包名称:
$ python3.8 -m pip list aalib | grep -i aalib
python-aalib 0.3.2
然后成功安装:
$ python3.8 -m pip install python-aalib
Collecting python-aalib
Downloading python-aalib-0.3.2.tar.gz (14 kB)
...
答案 9 :(得分:0)
如果您发现该软件包的其他版本可用,请在 google 中搜索 例如使用它 我在使用 glob 时遇到错误,所以我改用了 glob2
答案 10 :(得分:0)
我遇到了同样的问题,只有当我从我的 Docker 镜像(或 Dockerfile)运行命令时才会发生。最后几个小时后,我设法通过更新我的 python 解释器来解决它。指出我的 pip-package 需要 python>=3,7 但我的 Docker 镜像使用的是 python 3.6。
提示:要检查您是否有类似问题,只需检查 pip 包要求和您的 Python 版本。私有 pip 包解释器要求写在 setup.py 或 setup.cfg 中。公共 pip 包通常托管在 pypi.org 中,您可以在其中使用浏览器检查解释器要求。要检查您的 python 解释器版本,只需在您的控制台中编写例如 python --version 或 python3 --version
正如其他答案指出的那样,也可能存在其他您不满意的要求,这就是为什么 pip 找不到适合您的软件包版本的原因。所有要求都写在 pip 包文档中,可以从 https://pypi.org/project/graphene-django/your-package
轻松阅读答案 11 :(得分:0)
在稍有不同的情况下,在 MacO 上出现相同的错误。显然,超过 45 的 setuptools 版本可能会暴露一些问题,这个命令让我过去了:
pip3 install setuptools==45
答案 12 :(得分:0)
在Windows 10上的anaconda(python 3.7)中安装awscli
时出现此错误。
在进行故障排除时,我去了答案https://stackoverflow.com/a/49991357/6862405,然后去了https://stackoverflow.com/a/54582701/6862405。最后发现我需要安装库PyOpenSSL
,cryptography
,enum34
,idna
和ipaddress
。安装完这些命令(仅使用pip install
命令)后,我就可以安装awscli
。
答案 13 :(得分:0)
只需遵循项目页面上列出的要求:https://pypi.org/project/pgmagick/
答案 14 :(得分:0)
以下命令对我有用-
python -m pip install flask
答案 15 :(得分:-3)
使用命令提示符,然后选择以管理员身份运行。
升级点子版本
要升级PIP,请键入以下命令,然后按Enter:-
python.exe -m pip安装--upgrade pip
返回python路径C:\ Users \ Jack \ AppData \ Local \ Programs \ Python \ Python37 \ Scripts
键入jupyter笔记本
您将被重定向到resume-Jupyter主页
希望它能帮助!!!!!!!!!!!
答案 16 :(得分:-4)
sudo pip install wheel == 0.29.0