Aller au contenu

Python 3.8 : binaires non visibles dans le PATH

Featured Replies

Posté(e)

Salut à tous,

je viens d'installer le python 3.8 synocommunity (histoire d'avoir pip & co)

les binaires sont bien dans /var/packages/python38/target/bin mais je ne les ai retrouvé symlinkés nulle part dans /usr/local/...

C'est normal ou un oubli?

Posté(e)
  • Auteur
Si dsm 7, faut savoir que python 3 est déjà intégré directement…

Je sais bien, mais comme je l'ai écrit, il manque pip dans le python officiel et ça ne répond pas à ma question du coup.
Posté(e)

Bonjour,

Il y a 20 heures, CoolRaoul a dit :

il manque pip dans le python officiel

Python 2 utilise pip, Python 3 utilise pip3.
Si pip3 est absent, il suffit de l'installer.

curl -k https://bootstrap.pypa.io/get-pip.py | python3

Posté(e)
  • Auteur

 

Il y a 5 heures, PPJP a dit :

Si pip3 est absent, il suffit de l'installer.

curl -k https://bootstrap.pypa.io/get-pip.py | python3

Merci, ça a fonctionné!

$ which pip3
/bin/pip3

Par contre, j'imagine que j'aurais à refaire ça à chaque mise à jour du python DSM ?

(Je n'espère pas vraiment de réponse à cette question. Vu que c'est un peu "frais" ça m'étonnerait que beaucoup aient du recul la dessus.)

Il y a 5 heures, PPJP a dit :

Python 2 utilise pip, Python 3 utilise pip3.

Il semble que ce ne soit plus le cas (du moins dans la mesure ou aucun python2 n'est installé je suppose). Après install, pip est installé aussi et pip3 et pip3.8 sont exactement le même fichier:

$ sum  /bin/pip*
03891     1 /bin/pip
03891     1 /bin/pip3
03891     1 /bin/pip3.8
$ file   /bin/pip*
/bin/pip:    a /bin/python3 script text executable
/bin/pip3:   a /bin/python3 script text executable
/bin/pip3.8: a /bin/python3 script text executable

 

Modifié par CoolRaoul

Posté(e)

Oui depuis quelques temps maintenant pip est un alias de pip3, sur Debian en tout cas.
Pour la persistance tu dois toujours pouvoir aller mettre les binaires de pip quelque part dans /volume1, et ajouter le chemin dans le PATH pour la disponibilité globale de la commande.

Personnellement j'avais des exécutables dans /usr/local/share et depuis la migration ils sont toujours là. Si ça n'a pas bougé au passage de la v6 à la v7, peu de chance que ça soit le cas sur des sauts de version mineurs.

Modifié par .Shad.

Posté(e)
  • Auteur
il y a 10 minutes, .Shad. a dit :

Pour la persistance tu dois toujours pouvoir aller mettre les binaires de pip quelque part dans /volume1, et ajouter le chemin dans le PATH pour la disponibilité globale de la commande.

Pas si simple: le bootstrap ("curl -k https://bootstrap.pypa.io/get-pip.py | python3") ne se contente pas de déposer les scripts en /usr/bin/pip*, ca installe des modules et j'ai pas encore vu ou.
Le mieux je pense serait que je me configure un virtual env basé sur la version actuelle et comme ça je maitrise mieux.

Posté(e)
Le 06/06/2021 à 21:01, CoolRaoul a dit :

je viens d'installer le python 3.8 synocommunity (histoire d'avoir pip & co)

Il n'y a pas besoin du paquet de SynoCommunity, Python 3.8 est intégré à DSM 7.0 :

Citation

10. Python3 is merged into DSM as a built-in service. The original Python3 package will be unavailable in Package Center and you can remove it manually.

# ll /bin/py*
lrwxrwxrwx 1 root root    7 Jun  1 13:18 /bin/python -> python3
lrwxrwxrwx 1 root root    9 Jun  1 13:18 /bin/python3 -> python3.8
-rwxr-xr-x 1 root root 6104 Feb 24 04:35 /bin/python3.8

Mais effectivement, pip n'est pas présent par défaut.

Posté(e)
  • Auteur
il y a 2 minutes, PiwiLAbruti a dit :

Il n'y a pas besoin du paquet de SynoCommunity, Python 3.8 est intégré à DSM 7.0 :

Oui, @Einsteinium l'a déjà indiqué plus haut.

  • 1 mois après...
Posté(e)
Le 08/06/2021 à 08:38, CoolRaoul a dit :

 

Merci, ça a fonctionné!

$ which pip3
/bin/pip3

Par contre, j'imagine que j'aurais à refaire ça à chaque mise à jour du python DSM ?

Bonjour,

pip installé sans sudo ?

Moi il me l'installe dans $HOME/.local

 

Posté(e)
  • Auteur
pip installé sans sudo ?
Moi il me l'installe dans $HOME/.local

Bien que que non, j'ai fait ça en root, forcément (ça n'aurait pas pu installer quoi que ce soit dans /bin sinon).

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.