为什么python setup.py说的命令无效';bdist#u wheel';关于特拉维斯·西?
我的Python软件包有一个为什么python setup.py说的命令无效';bdist#u wheel';关于特拉维斯·西?,python,travis-ci,setup.py,pypi,Python,Travis Ci,Setup.py,Pypi,我的Python软件包有一个setup.py,它可以在Ubuntu Trusty和一个新的Vagrant Ubuntu Trusty VM上本地构建良好,当我这样配置它时: sudo apt-get install python python-dev --force-yes --assume-yes --fix-broken curl --silent --show-error --retry 5 https://bootstrap.pypa.io/get-pip.py | sudo pytho
setup.py
,它可以在Ubuntu Trusty和一个新的Vagrant Ubuntu Trusty VM上本地构建良好,当我这样配置它时:
sudo apt-get install python python-dev --force-yes --assume-yes --fix-broken
curl --silent --show-error --retry 5 https://bootstrap.pypa.io/get-pip.py | sudo python2.7
sudo -H pip install setuptools wheel virtualenv --upgrade
但当我在Travis CI Trusty Beta虚拟机上执行相同操作时:
- sudo apt-get install python python-dev --force-yes --assume-yes --fix-broken
- curl --silent --show-error --retry 5 https://bootstrap.pypa.io/get-pip.py | sudo python2.7
- sudo -H pip install setuptools wheel virtualenv --upgrade
我得到:
python2.7 setup.py bdist_wheel
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: setup.py --help [cmd1 cmd2 ...]
or: setup.py --help-commands
or: setup.py cmd --help
error: invalid command 'bdist_wheel'
这是相关的,但请注意,我正在安装控制盘并升级设置工具。此问题是由于:
- 为Python2.7安装的旧版本pip(6.1.1)
- 可靠的Beta映像上安装了多个Python 2.7副本
- Python2.7用于
sudo
travis
而不是sudo
安装:
- pip2.7 install --upgrade --user travis pip setuptools wheel virtualenv
必须安装
控制盘
软件包。一切都是最新的,但仍然给出了错误
pip install wheel
然后
工作没有问题。这个错误很奇怪,因为许多人提出了答案,但得到了混合的解决方案。我试过了,加上去。直到我添加了
pip安装——升级pip
之后,我才最终删除了这个错误。但是我没有时间来区分哪个是哪个,所以这只是供参考。如果您已经安装了所有必需的模块,您可能需要在setup.py
文件中导入setuptools
模块。因此,只需在setup.py
文件的前导添加以下行
import setuptools
from distutils.core import setup
# other imports and setups
wheel的文档中也提到了这一点 我已经安装了
控制盘
,因此我尝试卸载并重新安装,解决了以下问题:
pip uninstall wheel
pip install wheel
奇怪…我的修复程序是安装python3 dev
pip install wheel
为我工作,但你也可以加上这个
setup(
...
setup_requires=['wheel']
)
要安装setup.py并保存一个pip安装命令,请尝试通过从setuptools而不是distutils.core导入安装程序来修改setup.py文件 我在Mac OSX 10.8.5上安装jupyter时遇到了类似的问题,其他答案都没有帮助。这个问题是由为名为
pyzmq
的包构建“轮子”引起的,错误消息占据了数百页
我找到的解决方案是直接安装该软件包的旧版本:
python -m pip install pyzmq==17 --user
此后,
jupyter
的安装成功无误。它帮助我按照此处的说明进行操作:
Debian/Ubuntu
Python 2:
sudo apt install python-pip
Python 3:
sudo apt install python3-venv python3-pip
使用Ubuntu18.04,这个问题可以通过安装
python3wheel
包来解决
通常,这是作为任何Python包的依赖项安装的。但是,尤其是在构建您经常使用的容器映像时,
--没有安装建议
,因此它经常丢失,必须先手动安装。在我的情况下,由venv创建的wheel/pip/setuptools版本太旧了。
这项工作:
venv/bin/pip install --upgrade pip wheel setuptools
2020年1月
浪费了两个小时
在AWSUbuntu 18.04新机器上
,需要进行以下安装:
sudo apt-get install gcc libpq-dev -y
sudo apt-get install python-dev python-pip -y
sudo apt-get install python3-dev python3-pip python3-venv python3-wheel -y
pip3 install wheel
尤其是最后一行是必须的。但是,之前可能需要3行作为先决条件
希望对您有所帮助。在您的
设置.py中,如果您有:
from distutils.core import setup
然后,将其更改为
from setuptools import setup
然后重新创建您的virtualenv并重新运行该命令,它应该会工作。我确实在我的Ubuntu中安装了python3 dev
,并在setup.py
中添加了setup\u requires=[“wheel”]
,如果您使用的是setup.cfg
文件,请在install\u require
部分之前添加此项:
setup_requires =
wheel
setup.cfg项目示例:
# setup.py
from setuptools import setup
setup()
如果以上这些都不适用于您,那么您可能正经历着与我相同的问题。我只是在尝试安装
pyspark
时才看到此错误。解决方案将在另一个stackoverflow问题中解释
我发布了这张b/c。从错误消息中,我并没有立即意识到我的问题完全源于
pyspark
对pypandoc
的依赖,我希望能让其他人免于数小时的挠头!=) 也许你的pip版本已经过时了。在新创建的虚拟环境中安装模块时,我在WSL中遇到了同样的问题。我可以通过运行以下命令来解决此问题:
$./bin/python3-m pip安装-升级pip
在我的例子中,sudo-H pip安装setuptools——升级解决了这个问题。@MartinThoma谢谢你的提示。在发布了sudo-H pip-install-wheel之后,它对我起到了作用——升级
对于我来说,升级pip就足够了,从9.0.1升级到20.0.2“pip-install-wheel”有时我需要pip3安装控制盘
,因为我已经为pip
安装了控制盘,但没有安装pip3
。这很有效,但在pip安装控制盘
之后,我不得不pip卸载-r requirements.txt
并重新执行pip安装-r requirements.txt
无法打开文件'setup.py':[错误2]没有这样的文件或目录
有没有办法在干净的虚拟环境中自动安装wheel
?python3-m venv-系统站点包
会添加太多的包。这对我来说很有效。我使用distutils而不是setuptools进行安装,我已经安装了wheel包。对我来说很有效!我是将一个包从Python2迁移到Python3,不幸的是找不到相关指南。任何人做同样的事情并对这个问题感到失望,这可能会帮到你!FWIW我刚刚遇到这个错误,从一个激活的VirtualNV上卸载并重新安装meI-ranpip安装轮
,修复了它,b但是,在删除并重新创建virtualenv之后,修复程序仍然存在,这毫无意义。我本以为pip install wheel
的任何效果都会随virtualenv一起消失。那些人已经安装了wheel,但仍然没有安装
# setup.py
from setuptools import setup
setup()
# setup.cfg
[metadata]
name = name
version = 0.0.1
description = desc
long_description = file: README.md
long_description_content_type = text/markdown
url = url
author = author
classifiers =
Programming Language :: Python
Programming Language :: Python :: 3
[options]
include_package_data = true
packages = find:
setup_requires =
wheel
install_requires =
packages
packages
packages