J'essaie d'installer python paquet rpy2
avec pip install sur Ubuntu 16.04:
pip install rpy2==2.2.7
mais obtenez un message d'erreur (voir la sortie complète ci-dessous):
Command "python setup.py Egg_info" failed with error code 1 in /tmp/pip-build-EuOI6K/unroll/
La même chose se produit avec d’autres packages, tels que pip install unroll
, ou en utilisant pip2
. Je pensais que ceci post était le même problème, mais là, il est résolu en utilisant Sudo.
J'ai essayé des solutions dans ce post , comme: pip install --upgrade setuptools
, (Sudo) easy_install -U setuptools
ou Sudo apt-get install python-setuptools
, mais en vain.
Quelqu'un a suggéré que je pourrais avoir une installation bizarre de python/pip, voici quelques informations:
Sudo which python pip pip2 | xargs -rd '\n' readlink -f
/usr/bin/python2.7
/usr/local/bin/pip
/usr/local/bin/pip2
Sudo python --version
Python 2.7.12
Sudo pip --version
pip 9.0.1 from /home/matifou/.local/lib/python2.7/site-packages (python 2.7)
/usr/bin/pip2 --version
pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)
ls -l $(which pip); dpkg -S /usr/bin/pip
-rwxr-xr-x 1 root root 204 Nov 8 16:24 /usr/local/bin/pip
python-pip: /usr/bin/pip
pip install rpy2 == 2.2.7 Collecte rpy2 == 2.2.7 Utilisation de rpy2-2.2.7.tar.gz en cache Termine la sortie de la commande python setup.py Egg_info: Lance Egg_info En créant pip-Egg-info/rpy2.Egg-info Écrit en écrivant pip-Egg-info/rpy2.Egg-info/PKG-INFO écriture des noms de premier niveau dans pip-Egg-info/rpy2.Egg-info/top_level.txt écriture des liens de dépendance dans pip-Egg-info/rpy2.Egg-info/dependency_links.txt écriture du fichier manifeste 'pip-Egg-info/rpy2.Egg-info/SOURCES.txt' Traceback (appel le plus récent en dernier): Fichier "", ligne 1, dans Fichier "/tmp/pip-build-EkrbmM/rpy2/setup.py", ligne 462, dans [Os.path.join ('doc', 'source', 'rpy2_logo.png') ]]], Fichier "/usr/lib/python2.7/distutils/core.py", ligne 151, dans la configuration Dist.run_commands () Fichier "/ usr/lib/python2.7/distutils/dist.py ", ligne 953, dans run_commands self.run_command (cmd) Fil e "/usr/lib/python2.7/distutils/dist.py", ligne 972, dans run_command cmd_obj.run () Fichier "/usr/local/lib/python2.7 /dist-packages/setuptools/command/Egg_info.py", line 280, dans l’exécution self.find_sources () Fichier "/ usr/local/lib/python2. 7/dist-packages/setuptools/command/Egg_info.py ", Ligne 295, dans find_sources Mm.run () Fichier"/usr/local/lib/python2 .7/dist-packages/setuptools/command/Egg_info.py ", Ligne 526, dans l'exécution Self.add_defaults () Fichier"/usr/local/lib/python2.7/dist-packages/setuptools/command/Egg_info.py ", ligne 562, dans add_defaults sdist.add_defaults (self) Fichier"/usr/local/lib/python2.7/dist-packages/setuptools/command/py36compat.py ", ligne 36, dans add_defaults self._add_defaults_ext () Fichier"/usr/local /lib/python2.7/dist-packages/setuptools/command/py36compat.py",[.____.LINEline 119, dans _add_defaults_ ext build_ext = self.get_finalized_command ('build_ext') Fichier "/usr/lib/python2.7/distutils/cmd.py", ligne 312, dans get_finalized_command cmd_obj .ensure_finalized () Fichier "/usr/lib/python2.7/distutils/cmd.py", ligne 109, dans Ensure_finalized self.finalize_options () Fichier "/ tmp/pip-build-EkrbmM/rpy2/setup.py ", ligne 155, dans finalize_options config + = get_rconfig (r_home, about) Fichier"/tmp/pip-build-EkrbmM/rpy2/setup.py ", ligne 319, dans get_rconfig rc = RConfig.from_string (rconfig, allow_empty = allow_empty) Fichier" /tmp/pip-build-EkrbmM/rpy2/setup.py ", ligne 279, dans from_string + '\ nin string\n' + string) ValueError: sous-chaîne non valide -fopenmp dans une chaîne -Wl, - export-dynamic -fopenmp -Wl, -Bsymbolic-functions -Wl, -z, relro -L/usr/lib/R/lib -lR -lpcre -llzma -lbz2 -lz -lrt -ldl - lm Command "pyt hon setup.py Egg_info "a échoué avec le code d'erreur 1 dans /tmp/pip-build-EkrbmM/rpy2/[.____.unset.____.]pip installer unroll Collecter unroll Utilisation de cached unroll-0.1.0 .tar.gz Sortie complète de la commande python setup.py Egg_info: Téléchargement http://pypi.python.org/packages/source/d/distribute/distribute -0.6.14.tar.gz Traceback (l'appel le plus récent en dernier): Fichier "", ligne 1, dans Fichier "/ tmp/pip-build-QimGjp/unroll/setup.py ", ligne 2, dans ez_setup.use_setuptools () Fichier" /usr/local/lib/python2.7/dist-packages/ez_setup.py ", ligne 145 , dans use_setuptools return _do_download (version, download_base, to_dir, download_delay) Fichier "/usr/local/lib/python2.7/dist-packages/ez_setup.py", ligne 124, dans _do_download to_dir, download_delay) Fichier "/usr/local/lib/python2.7/dist-packages/ez_setup.py", ligne 193, dans download_setuptools src = urlopen (url) [.___ _.] Fichier "/usr/lib/python2.7/urllib2.py", ligne 154, dans urlopen Renvoie opener.open (url, données, délai d'attente) Fichier "/ usr/lib/python2.7/urllib2.py ", ligne 435, dans open response = meth (req, response) Fichier" /usr/lib/python2.7/urllib2.py ", ligne 548, dans http_response 'http', demande, réponse, code, msg, hdrs) Fichier "/usr/lib/python2.7/urllib2.py", ligne 473, en erreur renvoie self._call_chain (* args) Fichier "/usr/lib/python2.7/urllib2.py", ligne 407, dans _call_chain result = func (* args ) Fichier "/usr/lib/python2.7/urllib2.py", ligne 556, dans http_error_default Déclencher HTTPError (req.get_full_url (), code, msg, hdrs, fp) urllib2.HTTPError: Erreur HTTP 403: SSL est requis La commande "python setup.py Egg_info" a échoué avec le code d'erreur 1 dans tmp/pip - build- QimGjp/unroll /
Solution que j’ai prise pour ma propre question: les réponses proposées ne résolvaient pas le problème. J’ai donc fini par utiliser conda
, créant un environnement spécifique pour le paquet dont j’avais besoin, et cela a fonctionné! C’est maintenant la meilleure solution, d’autant plus qu’il faut installer une version parallèle (vous pouvez utiliser miniconda pour l’espace), mais c’est pratique!
vous devez obtenir des outils de configuration et probablement des modules de développement, tapez ce qui suit
Sudo apt-get install python-setuptools
Sudo apt-get install python-dev
il peut être judicieux de commencer par mettre à niveau pip pour s’assurer qu’il n’y a que du bon fonctionnement, cela se fait en tapant
Sudo apt install python-pip
bonne chance
La version de python-setuptools
dans le référentiel de paquets d'Ubuntu 16.04 LTS est périmée/non maintenue. Mettez-la à niveau avec pip
au lieu de compter sur le gestionnaire de paquets:
$ Sudo pip install --upgrade setuptools