Mon paquet Python a un setup.py
qui se construit correctement localement sur Ubuntu Trusty et sur un nouveau Vagrant Ubuntu Trusty VM lorsque je le provisionne comme ceci:
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
Mais lorsque je fais la même chose sur une VM Beta Travis CI Trusty:
- 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
Je reçois:
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'
This Pourquoi ne puis-je pas créer une roue en python? est lié mais notez que j'installe wheel et que je mets à jour setuptools.
Ce problème est dû à:
Sudo
Tout est un peu compliqué et mieux expliqué ici https://github.com/travis-ci/travis-ci/issues/4989 .
Ma solution était d'installer avec l'utilisateur travis
au lieu de Sudo
:
- pip2.7 install --upgrade --user travis pip setuptools wheel virtualenv
A dû installer le paquet wheel
. Tout était à jour mais donnait toujours l'erreur.
pip install wheel
ensuite
python setup.py bdist_wheel
Travaillé sans problèmes.
pip install wheel
a travaillé pour moi, mais vous pouvez aussi ajouter ceci
setup(
...
setup_requires=['wheel']
)
sur setup.py et enregistrez-vous une commande pip install
Si tous les modules requis sont déjà installés, vous devez probablement importer le module setuptools
dans votre fichier setup.py
. Il suffit donc d’ajouter la ligne suivante au début du fichier setup.py
.
import setuptools
from distutils.core import setup
# other imports and setups
Ceci est également mentionné dans la documentation de wheel. https://wheel.readthedocs.io/fr/stable/#usage
Cette erreur est étrange car beaucoup de réponses proposées et de solutions mixtes. Je les ai essayés, ajoutez-les. C’est seulement quand j’ai ajouté pip install --upgrade pip
que l’erreur a finalement été supprimée. Mais je n'ai pas le temps d'isoler lequel est lequel, alors c'est juste pour le moment.
J'avais déjà installé wheel
alors j'ai essayé de désinstaller et de réinstaller, et le problème a été résolu:
pip uninstall wheel
pip install wheel
Bizarre...
Mon correctif était apt install python3-dev
Essayez de modifier le fichier setup.py en important le programme d'installation depuis setuptools au lieu de distutils.core.
Pas lié à Travis CI mais j'ai rencontré un problème similaire en essayant d'installer jupiter
sur mon Mac OSX 10.8.5, et aucune des autres réponses n'a été utile. Le problème était dû à la construction de la "roue" du paquetage appelé pyzmq
, avec des messages d'erreur remplissant des centaines de pages.
La solution que j'ai trouvée consistait à installer directement une version plus ancienne de ce paquet:
python -m pip install pyzmq==17 --user
Après cela, l’installation de jupyter
a réussi sans erreur.