Mi paquete de Python tiene un setup.py que funciona bien localmente en Ubuntu Trusty y en una máquina virtual nueva de Vagrant Ubuntu Trusty cuando lo aprovisiono de esta manera:
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 --upgradePero cuando hago lo mismo en una VM Trusty Beta de Travis CI:
- 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 --upgradeYo 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 la rueda y actualizando las herramientas de configuración.
Si ya tiene instalados todos los módulos requeridos, probablemente necesite importar el módulo setuptools en su archivo setup.py . Así que simplemente agregue la siguiente línea al principio del archivo setup.py .
import setuptools from distutils.core import setup # other imports and setupsEsto también se menciona en la documentación de la rueda. https://wheel.readthedocs.io/en/stable/#usage
Este error es extraño ya que muchas respuestas propuestas y obtuvieron soluciones mixtas. Los probé, los agrego. Fue solo cuando agregué pip install --upgrade pip finalmente me eliminó el error. Pero no tengo tiempo para aislar cuál es cuál, así que esto es solo para tu información.
Tuve que instalar el paquete de wheel . Todo estaba actualizado pero seguía dando el error.
pip install wheelluego
python setup.py bdist_wheelfuncionó sin problemas.
Este problema se debe a:
sudoTodo 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 en lugar de sudo :
- pip2.7 install --upgrade --user travis pip setuptools wheel virtualenvSi está utilizando archivos setup.cfg , agregue esto antes de la parte install_require :
setup_requires = wheelEjemplo de proyecto setup.cfg:
# 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 packagesen mi caso, la versión de wheel/pip/setuptools creada por venv es demasiado antigua. esto funciona:
venv/bin/pip install --upgrade pip wheel setuptoolsEn una Ubuntu 18.04 new machine , se requieren las siguientes instalaciones:
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 Especialmente la última línea es imprescindible.
Sin embargo, antes se pueden requerir 3 líneas como requisitos previos.
En su setup.py , si tiene:
from distutils.core import setupLuego, cámbialo a
from setuptools import setupLuego vuelva a crear su virtualenv y vuelva a ejecutar el comando, y debería funcionar.
Hice apt-get install python3-dev en mi Ubuntu y agregué setup_requires=["wheel"] en setup.py
No está relacionado con Travis CI, pero me encontré con un problema similar al intentar instalar jupyter 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 llenaban 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 se realizó sin errores.
Me ayudó a seguir las instrucciones aquí:
https://packaging.python.org/guides/installing-using-linux-tools/
Debian/Ubuntu
Pitón 2:
sudo apt install python-pipPitón 3:
sudo apt install python3-venv python3-pipCon Ubuntu 18.04, este problema se puede resolver instalando el paquete python3-wheel .
Por lo general, esto se instala como una dependencia de cualquier paquete de Python. Pero especialmente cuando crea imágenes de contenedores, a menudo trabaja con --no-install-recommends y, por lo tanto, a menudo falta y debe instalarse manualmente primero.
Intente modificar el archivo setup.py importando la configuración desde setuptools en lugar de distutils.core
Mi solución fue apt install python3-dev