最初,我的应用程序因错误错误而崩溃: pycairo 的构建轮失败(如图所示)
我尝试通过运行几个命令来修复它
给出了同样的错误。没有修复。
然后我尝试卸载requirements.txt并重新安装
没有解决问题。
然后我尝试了以下命令,但仍然收到相同的错误“pycairo 的构建轮失败”:
然后我尝试了这个命令:
我在图片中收到此错误:“无效版本:'0.23ubuntu1'”
我也尝试删除此包,但它显示找不到该包:
我使用的命令: sudo apt-get remove distro-info
错误:
正在阅读包裹清单...完成
构建依赖树
读取状态信息...完成
软件包“distro-info”未安装,因此未删除
0 已升级,0 已新安装,0 已删除,283 未升级。
我搜索了解决方案,但没有找到任何有关错误“无效版本:'0.23ubuntu1'”的解决方案。现在,当我运行“flask run”时,出现错误:-bash:/home/ktai/.local/bin/flask:没有这样的文件或目录
将不胜感激任何帮助!
我尝试了几个命令行但没有任何效果
sea*_*ean 13
我从这个答案中了解到,setuptools 版本存在一个“错误”,导致了这个特定的Invalid version: '0.23ubuntu1'错误。
尽管看到各种 pip 命令的错误,包括pip install,但我惊讶地发现这个降级命令(来自链接的答案)似乎解决了问题:
pip install --upgrade --user setuptools==58.3.0
Run Code Online (Sandbox Code Playgroud)
此错误源自 PEP 440(Python 增强提案 #440),它强制执行 Python 包命名约定,并且此错误似乎实际上只发生在基于 Debian 的发行版(如 Ubuntu)上。例如,我一直在尝试通过安装包pip并收到错误:
pkg_resources.extern.packaging.version.InvalidVersion: Invalid version: '1.1build1' (package: distro-info)
所以它告诉我们,1.1build1对于 PEP 440 来说,这是一个无效的版本名称,在我的例子中,它可能是distro-info从 Ubuntu(预安装的)获取软件包。
我可以通过使用 Python 虚拟环境并不允许它使用system-site-packages有时称为“全局包”来解决这个问题。
解决方案是删除有问题的软件包并重新安装满足 PEP 440 要求的版本(例如遵循“0.0.0”约定。例如“1.2.0”可以,“1.2build3”则不行)。
pip uninstall -y distro-info
pip install distro-info==1.0
Run Code Online (Sandbox Code Playgroud)
distro-info此外,在 PyCharm 中,我可以导航到 Python 解释器设置,从 Python 解释器下拉列表中选择我正在使用的解释器,并确认它尝试使用的版本是1.1build1. 要将其“升级”到1.0,我可以双击“最新版本”列下的“1.0”,然后从弹出的模式中选择“安装包”。
如果这个或上面的删除命令distro-info不起作用,您可以使用同一窗口来删除distro-info,然后只需运行pip install distro-info==1.0.
小智 3
您偶然使用 ubuntu 20.04 吗?我遇到了类似的问题,但它与 pycairo 无关,所以情况对你来说可能会有所不同。的存在distro-info(版本不符合 PEP-440)就会导致您的帖子标题中出现错误消息。
对我来说,这个有帮助:(所以你很接近 apt-get remove...)
python3 -m pip uninstall -y distro-info
Run Code Online (Sandbox Code Playgroud)
就我而言,它似乎没有破坏任何重要的东西,所以我会保持这样。但不能保证同样的方法也适用于您。此外,您可能会在下次从requirements.txt 文件安装软件包时取回它。
如果我正确理解了这个线程,那么根据您使用的 Ubuntu 版本,可能会有此软件包的兼容版本的更新。
| 归档时间: |
|
| 查看次数: |
20505 次 |
| 最近记录: |