# \[Python\] Install pew via pip3

**URL:** <https://www.debian-fr.org/t/python-install-pew-via-pip3/72674>\
**Category:** Programmation\
**Created:** [Février 13, 2017, 10:21 UTC](https://www.debian-fr.org/t/python-install-pew-via-pip3/72674 "2017-02-13T22:21:52Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![trululu](https://www.debian-fr.org/user_avatar/www.debian-fr.org/trululu/32/5304_2.png) [@trululu](https://www.debian-fr.org/u/trululu)\
**Post date:** [Février 13, 2017, 10:21 UTC](https://www.debian-fr.org/t/python-install-pew-via-pip3/72674/1 "2017-02-13T22:21:53Z")

</div>

Bonjour à tous,

J’ai voulu installer [pew](https://github.com/berdario/pew) à l’aide de pip sur une jessie toute neuve et à jour, et voici l’erreur que j’ai obtenu :

```bash
~# pip3 install pew
Downloading/unpacking pew
  Downloading pew-0.1.26-py2.py3-none-any.whl
Downloading/unpacking setuptools>=17.1 (from pew)
  Downloading setuptools-34.2.0-py2.py3-none-any.whl (389kB): 389kB downloaded
Downloading/unpacking virtualenv-clone>=0.2.5 (from pew)
  Downloading virtualenv-clone-0.2.6.tar.gz
  Running setup.py (path:/tmp/pip-build-zjo98_1r/virtualenv-clone/setup.py) egg_info for package virtualenv-clone
    
Downloading/unpacking pythonz-bd>=1.10.2 (from pew)
  Downloading pythonz_bd-1.11.4-py3-none-any.whl (117kB): 117kB downloaded
Downloading/unpacking virtualenv>=1.11 (from pew)
  Downloading virtualenv-15.1.0-py2.py3-none-any.whl (1.8MB): 1.8MB downloaded
Requirement already satisfied (use --upgrade to upgrade): six>=1.6.0 in /usr/lib/python3/dist-packages (from setuptools>=17.1->pew)
Downloading/unpacking appdirs>=1.4.0 (from setuptools>=17.1->pew)
  Downloading appdirs-1.4.0-py2.py3-none-any.whl
Downloading/unpacking packaging>=16.8 (from setuptools>=17.1->pew)
  Downloading packaging-16.8-py2.py3-none-any.whl
Downloading/unpacking pyparsing (from packaging>=16.8->setuptools>=17.1->pew)
  Downloading pyparsing-2.1.10-py2.py3-none-any.whl (56kB): 56kB downloaded
Installing collected packages: pew, setuptools, virtualenv-clone, pythonz-bd, virtualenv, appdirs, packaging, pyparsing
  Found existing installation: setuptools 5.5.1
    Not uninstalling setuptools at /usr/lib/python3/dist-packages, owned by OS
  Running setup.py install for virtualenv-clone
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/usr/local/lib/python3.4/dist-packages/setuptools/ __init__.py", line 12, in <module>
        import setuptools.version
      File "/usr/local/lib/python3.4/dist-packages/setuptools/version.py", line 1, in <module>
        import pkg_resources
      File "/usr/local/lib/python3.4/dist-packages/pkg_resources/ __init__.py", line 70, in <module>
        import packaging.version
    ImportError: No module named 'packaging'
    Complete output from command /usr/bin/python3 -c "import setuptools, tokenize; __file__ ='/tmp/pip-build-zjo98_1r/virtualenv-clone/setup.py';exec(compile(getattr(tokenize, 'open', open)( __file__ ).read().replace('\r\n', '\n'), __file__ , 'exec'))" install --record /tmp/pip-gi98id8h-record/install-record.txt --single-version-externally-managed --compile:
    Traceback (most recent call last):

  File "<string>", line 1, in <module>

  File "/usr/local/lib/python3.4/dist-packages/setuptools/ __init__.py", line 12, in <module>

    import setuptools.version

  File "/usr/local/lib/python3.4/dist-packages/setuptools/version.py", line 1, in <module>

    import pkg_resources

  File "/usr/local/lib/python3.4/dist-packages/pkg_resources/ __init__.py", line 70, in <module>

    import packaging.version

ImportError: No module named 'packaging'

----------------------------------------
Cleaning up...
Command /usr/bin/python3 -c "import setuptools, tokenize; __file__ ='/tmp/pip-build-zjo98_1r/virtualenv-clone/setup.py';exec(compile(getattr(tokenize, 'open', open)( __file__ ).read().replace('\r\n', '\n'), __file__ , 'exec'))" install --record /tmp/pip-gi98id8h-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip-build-zjo98_1r/virtualenv-clone
Storing debug log for failure in /root/.pip/pip.log

```

J’ai cherché sur le Net comment résoudre ce pb et à chaque fois il est conseillé avant tout de mettre à jour pip, sauf que j’obtiens là aussi une erreur alors que cette commande fonctionnait correctement avant :

```bash
 ~# pip3 install --upgrade pip3
Traceback (most recent call last):
  File "/usr/bin/pip3", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/usr/local/lib/python3.4/dist-packages/pkg_resources/ __init__.py", line 70, in <module>
    import packaging.version
ImportError: No module named 'packaging'

```

De toute façon, depuis cette tentative d’install de pew, quoi que j’exécute comme commande pip maintenant j’obtiens toujours la même erreur :

```bash
 ~# pip3
Traceback (most recent call last):
  File "/usr/bin/pip3", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/usr/local/lib/python3.4/dist-packages/pkg_resources/ __init__.py", line 70, in <module>
    import packaging.version
ImportError: No module named 'packaging'

```

Quelqu’un aurait-il une idée ou un conseil à me donner pour résoudre mon problème, svp ?  
Merci d’avance  
Trululu

---

<div class="post-metadata">

**Author:** ![seb-ksl](https://www.debian-fr.org/user_avatar/www.debian-fr.org/seb-ksl/32/2946_2.png) [@seb-ksl](https://www.debian-fr.org/u/seb-ksl)\
**Post date:** [Février 14, 2017, 8:24 UTC](https://www.debian-fr.org/t/python-install-pew-via-pip3/72674/3 "2017-02-14T08:24:59Z")

</div>

Salut,

Il existe un paquet `python3-packaging` dans les dépôts, tu as essayé de l’installer ?

---

<div class="post-metadata">

**Author:** ![trululu](https://www.debian-fr.org/user_avatar/www.debian-fr.org/trululu/32/5304_2.png) [@trululu](https://www.debian-fr.org/u/trululu)\
**Post date:** [Février 14, 2017, 9:01 UTC](https://www.debian-fr.org/t/python-install-pew-via-pip3/72674/4 "2017-02-14T09:01:36Z")

</div>

Merci pour ta réponse seb-ksl !

Par contre, j’ai pas l’impression que ma jessie connaisse ce paquet : ☹

```bash
~/.pip# apt-cache policy python3-packaging
N: Impossible de trouver le paquet python3-packaging

```

Pour info, voici ma source.list :

```bash
 ~/.pip# cat /etc/apt/sources.list
# deb http://httpredir.debian.org/debian jessie main

deb http://httpredir.debian.org/debian jessie main contrib non-free
deb-src http://httpredir.debian.org/debian jessie main contrib non-free

deb http://security.debian.org/ jessie/updates main contrib non-free
deb-src http://security.debian.org/ jessie/updates main contrib non-free

# jessie-updates, previously known as 'volatile'
deb http://httpredir.debian.org/debian jessie-updates main
deb-src http://httpredir.debian.org/debian jessie-updates main

```

---

<div class="post-metadata">

**Author:** ![seb-ksl](https://www.debian-fr.org/user_avatar/www.debian-fr.org/seb-ksl/32/2946_2.png) [@seb-ksl](https://www.debian-fr.org/u/seb-ksl)\
**Post date:** [Février 14, 2017, 10:29 UTC](https://www.debian-fr.org/t/python-install-pew-via-pip3/72674/5 "2017-02-14T10:29:59Z")

</div>

Argh, j’aurais dû vérifier, le paquet n’est dispo qu’à partir de testing 😕. Ceci dit, tu devrais aussi pouvoir l’installer avec `pip` : [https://pypi.python.org/pypi/packaging/16.8](https://pypi.python.org/pypi/packaging/16.8).

---

<div class="post-metadata">

**Author:** ![trululu](https://www.debian-fr.org/user_avatar/www.debian-fr.org/trululu/32/5304_2.png) [@trululu](https://www.debian-fr.org/u/trululu)\
**Post date:** [Février 14, 2017, 10:43 UTC](https://www.debian-fr.org/t/python-install-pew-via-pip3/72674/6 "2017-02-14T10:43:59Z")

</div>

Ben en fait, c’est bien là mon souci : je suis bloqué car je ne peux plus rien faire avec pip !  
Dès que je l’utilise (quelle que soit la commande) j’obtiens maintenant (c’est à dire depuis ma tentative d’install de pew) toujours la même erreur :

````bash
~# pip3 --version
Traceback (most recent call last):
  File "/usr/bin/pip3", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/usr/local/lib/python3.4/dist-packages/pkg_resources/ __init__.py", line 70, in <module>
    import packaging.version
ImportError: No module named 'packaging'
```

J'ai essayé en désinstallant pip (``apt purge python3-pip``) puis en le réinstallant, mais sans succès...
````

---

<div class="post-metadata">

**Author:** ![trululu](https://www.debian-fr.org/user_avatar/www.debian-fr.org/trululu/32/5304_2.png) [@trululu](https://www.debian-fr.org/u/trululu)\
**Post date:** [Février 14, 2017, 10:59 UTC](https://www.debian-fr.org/t/python-install-pew-via-pip3/72674/7 "2017-02-14T10:59:21Z")

</div>

Par contre, j’ai une question : je ne sais jamais quand je dois utiliser la commande `pip` ou la commande `pip3` ?

En effet, sur la doc de [packaging](https://packaging.pypa.io/en/latest/) ils indiquent la commande `pip install packages` (et non `pip3`)  
Or, je n’ai pas pip d’installé mais juste pip3 :

````bash
~# apt-cache policy python{,3}-pip
python-pip:
  Installé : (aucun)
  Candidat : 1.5.6-5
 Table de version :
     1.5.6-5 0
        500 http://httpredir.debian.org/debian/ jessie/main amd64 Packages
python3-pip:
  Installé : 1.5.6-5
  Candidat : 1.5.6-5
 Table de version :
 *** 1.5.6-5 0
        500 http://httpredir.debian.org/debian/ jessie/main amd64 Packages
        100 /var/lib/dpkg/status
```

Sauf que très souvent dans les docs, ``pip`` veut en fait "dire" ``pip3`` : pas simple pour les débutants... :confused:
Du coup, est-ce que je dois aussi installer ``python-pip`` ? (bien que je ne fasse jamais de python 2)
````

---

<div class="post-metadata">

**Author:** ![seb-ksl](https://www.debian-fr.org/user_avatar/www.debian-fr.org/seb-ksl/32/2946_2.png) [@seb-ksl](https://www.debian-fr.org/u/seb-ksl)\
**Post date:** [Février 14, 2017, 11:40 UTC](https://www.debian-fr.org/t/python-install-pew-via-pip3/72674/8 "2017-02-14T11:40:06Z")

</div>

> [@trululu](#):
>
> Sauf que très souvent dans les docs, pip veut en fait «&nbsp;dire&nbsp;» pip3

Le fait est que ça dépend probablement de ton système. Je ne connais pas la situation sur les autres distributions Linux, mais si Python 3 est le Python par défaut, alors pip pointe probablement vers pip3. Sur Debian, Python par défaut est toujours en version 2, et c’est donc à toi de préciser que tu veux t’adresser à la version 3, notamment en utilisant explicitement pip3. Ou bien tu peux déclarer toi-même Python 3 comme étant la version par défaut.

> [@trululu](#):
>
> Du coup, est-ce que je dois aussi installer python-pip ?

Tu peux, mais dans ce cas les modules que tu installeras seront disponibles pour Python 2, pas 3.

> [@trululu](#):
>
> toujours la même erreur

Qui apparemment est connue et signalée : [https://github.com/pypa/setuptools/issues/937](https://github.com/pypa/setuptools/issues/937) ;-). Ils proposent quelques contournements possibles, sinon tu peux essayer d’installer la version testing (aucune idée de ce que ça peut impliquer niveau dépendances).

---

<div class="post-metadata">

**Author:** ![trululu](https://www.debian-fr.org/user_avatar/www.debian-fr.org/trululu/32/5304_2.png) [@trululu](https://www.debian-fr.org/u/trululu)\
**Post date:** [Février 14, 2017, 1:01 UTC](https://www.debian-fr.org/t/python-install-pew-via-pip3/72674/9 "2017-02-14T13:01:30Z")

</div>

Yaissse !

Merci seb-ksl pour ton aide car maintenant ça fonctionne ! 😀

La manip décrite [ici](https://packaging.python.org/installing/#id5) ne fonctionnant malheureusement pas, voici ce que j’ai fait :

```bash
~# apt purge python3-pip
~# curl -o get-pip.py https://bootstrap.pypa.io/get-pip.py
~# python3 ./get-pip.py
~# apt install python3-pip

```

Du coup, pip3 refonctionne et, après avoir installé les dépendances de pew suivant ce qui est indiqué [là](https://github.com/berdario/pew/blob/master/requirements.txt), pew fonctionne !

> [@seb-ksl](#):
>
> mais si Python 3 est le Python par défaut, alors pip pointe probablement vers pip3.

A priori, il semble que ce soit Python 2 qui est configuré par défaut sur ma jessie toute neuve :

```bash
~$ python
Python 2.7.9 (default, Jun 29 2016, 13:08:31) 
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 

```

Sauf que quand je j’affiche la version de pip :

```bash
~$ pip --version
pip 9.0.1 from /usr/local/lib/python3.4/dist-packages (python 3.4)

```

on voit que ça pointe finalement vers le pip qui utilise Python 3.4… donc c’est forcément pip3, non ?

C’est bizarre comme config 😕

[hors sujet] L’interprétation du Markdown bug où c’est moi qui ne sais pas l’utiliser sur ce forum ??? (Cf mon 2ème lien + la citation au milieu de ce message) [/hors sujet]

---

<div class="post-metadata">

**Author:** ![seb-ksl](https://www.debian-fr.org/user_avatar/www.debian-fr.org/seb-ksl/32/2946_2.png) [@seb-ksl](https://www.debian-fr.org/u/seb-ksl)\
**Post date:** [Février 14, 2017, 1:48 UTC](https://www.debian-fr.org/t/python-install-pew-via-pip3/72674/10 "2017-02-14T13:48:07Z")

</div>

Content que tu t’y retrouves 🙂.

> [@trululu](#):
>
> on voit que ça pointe finalement vers le pip qui utilise Python 3.4… donc c’est forcément pip3, non ?

Si tu n’as que pip3 d’installé, c’est possible qu’il crée un lien symbolique `pip` qui pointe vers `pip3`.

> [@trululu](#):
>
> [hors sujet] L’interprétation du Markdown bug où c’est moi qui ne sais pas l’utiliser sur ce forum ??? (Cf mon 2ème lien + la citation au milieu de ce message) [/hors sujet]

Effectivement, là ça a merdé ;-).
