Pyinstaller ne marche pas sous Linux
Résolu
Bonsoir,
Regardez ce que l'on m'affiche quand j'essaie d'installer pyinstaller :
Avez vous une solution ?
Regardez ce que l'on m'affiche quand j'essaie d'installer pyinstaller :
salim@helium:~$ pip3 install pyinstaller
Looking in indexes: https://pypi.org/simple https://www.piwheels.org/simple
Requirement already satisfied: pyinstaller in ./.local/lib/python3.7/site-packages (5.0.dev0)
Requirement already satisfied: altgraph in ./.local/lib/python3.7/site-packages (from pyinstaller) (0.17.2)
Requirement already satisfied: importlib-metadata; python_version < "3.8" in ./.local/lib/python3.7/site-packages (from pyinstaller) (4.8.2)
Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (from pyinstaller) (40.8.0)
Requirement already satisfied: pyinstaller-hooks-contrib>=2020.6 in ./.local/lib/python3.7/site-packages (from pyinstaller) (2022.0)
Requirement already satisfied: zipp>=0.5 in ./.local/lib/python3.7/site-packages (from importlib-metadata; python_version < "3.8"->pyinstaller) (3.6.0)
Requirement already satisfied: typing-extensions>=3.6.4; python_version < "3.8" in ./.local/lib/python3.7/site-packages (from importlib-metadata; python_version < "3.8"->pyinstaller) (4.0.0)
salim@helium:~$ pyinstaller brouillon2.py
bash: pyinstaller : commande introuvable
Avez vous une solution ?
1 réponse
-
Bonjour,
Pour trouver une commande, ton shell examine dans l'ordre les dossiers référencés dans la variable d'environnementPATH
que tu peux afficher avec la commande :
echo $PATH
Exemple :
(mando@silk) (~) $ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
Or tous ces dossiers requiert des droits administrateur (pour des raisons évidentes de sécurité) pour qu'on puisse y ajouter d'autres exécutables. Comme tu lancespip3
sanssudo
,pip3
n'a pas les droits pour installerpyinstaller
dans/usr/local/bin
(qui serait le dossier dans lequel l'exécutable serait installé si tu utilisaissudo pip3 install pyinstaller
). Il le déploie probablement dans genre~/.local/bin
où~
désigne ton dossier personnel (e.g./home/toto
). Si ce dossier n'est pas dans tonPATH
, ton shell ne peut pas trouver cet exécutable car il ne cherchera pas dans ce dossier.
Solution 1 : installe pyinstaller en root
sudo pip3 install pyinstaller which pyinstaller
Voici à quoi ce ressemble chez moi :
(mando@silk) (~) $ which pyinstaller
/usr/local/bin/pyinstaller
Solution 2 : ajoute ~/.local/bin dans ton PATH
PATH=$PATH:$HOME/.local/bin which pyinstaller
Tu peux ajouter à la fin du fichier~/.bashrc
la directive pour que tonPATH
soit automatiquement corrigé les prochaines fois que tu lances un shell :
export PATH=$PATH:$HOME/.local/bin
Bonne chance