with - ¿Por qué python setup.py dice comando no válido ''bdist_wheel'' en Travis CI?
travis download (9)
Mi paquete Python tiene un
setup.py
que se construye bien localmente en Ubuntu Trusty y en una nueva Vagrant Ubuntu Trusty VM cuando lo aprovisiono así:
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
Pero cuando hago lo mismo en una VM 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
Yo obtengo:
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''
Esto ¿Por qué no puedo crear una rueda en Python? está relacionado, pero tenga en cuenta que estoy instalando wheel y actualizando setuptools.
Este error es extraño ya que muchas respuestas propuestas y obtuvieron soluciones mixtas.
Los probé, los agregué.
Fue solo cuando agregué la
pip install --upgrade pip
finalmente eliminó el error para mí.
Pero no tengo tiempo para aislar cuál es cuál, así que esto es solo para tu información.
Este problema se debe a:
- una versión anterior de pip (6.1.1) instalada para Python 2.7
- múltiples copias de Python 2.7 instaladas en la imagen de Trusty Beta
-
Se usa una ubicación diferente para Python 2.7 para
sudo
Todo es un poco complicado y se explica mejor aquí https://github.com/travis-ci/travis-ci/issues/4989 .
Mi solución fue instalar con el usuario
travis
lugar de
sudo
:
- pip2.7 install --upgrade --user travis pip setuptools wheel virtualenv
Intente modificar el archivo setup.py importando la configuración de setuptools en lugar de distutils.core
Mi solución fue
apt install python3-dev
No está relacionado con Travis CI, pero me encontré con un problema similar al intentar instalar
jupiter
en mi Mac OSX 10.8.5, y ninguna de las otras respuestas fue de ayuda.
El problema fue causado por la construcción de la "rueda" para el paquete llamado
pyzmq
, con mensajes de error que
pyzmq
cientos de páginas.
La solución que encontré fue instalar directamente una versión anterior de ese paquete:
python -m pip install pyzmq==17 --user
Después de eso, la instalación de
jupyter
sin errores.
Si ya tiene instalados todos los módulos necesarios, probablemente necesite importar el módulo
setuptools
en su archivo
setup.py
.
Así que solo agregue la siguiente línea al
setup.py
archivo
setup.py
.
import setuptools
from distutils.core import setup
# other imports and setups
Esto también se menciona en la documentación de la rueda. https://wheel.readthedocs.io/en/stable/#usage
Tuve que instalar el paquete de la
wheel
.
Todo estaba actualizado pero aún daba el error.
pip install wheel
entonces
python setup.py bdist_wheel
Trabajó sin problemas.
Ya tenía la
wheel
instalada, así que intenté desinstalar y reinstalar, y solucionó el problema:
pip uninstall wheel
pip install wheel
Extraño...
pip install wheel
funcionó para mí, pero también puedes agregar esto
setup(
...
setup_requires=[''wheel'']
)
para setup.py y guardar un comando de instalación de pip