Bienvenue sur IndexError.

Ici vous pouvez poser des questions sur Python et le Framework Django.

Mais aussi sur les technos front comme React, Angular, Typescript et Javascript en général.

Consultez la FAQ pour améliorer vos chances d'avoir des réponses à vos questions.

installer un module à la grosse

+2 votes

Je bosse avec un environnement verrouillé: la version de python que je dois utiliser vient avec un logiciel et je ne peux rien y ajouter directement, que ce soit à coup de pip ou avec un setup.py.
Je suis sous windows et n'ai pas les droits pour modifier ce dossier... sauf pour y faire un coller.
Du coup jusqu'à présent j'ai bricolé en installant un autre python à un endroit où je peux faire ce que je veux, et j'installe les modules que je veux sur celui-là; ensuite je fais un vilain copier-coller des fichiers ainsi installés jusque dans la version "verrouillée".
Pour le moment, ça marche.
Je me demande simplement si vous connaîtriez un moyen plus propre.

demandé 9-Nov-2015 par furankun (1,434 points)

Peut être qu'en forcant les variable d'environnement PATH et PYTHONPATH avant de lancer le soft que tu utilises tu sera capable de modifier son comportement.
Mais je n'y crois pas trop, je suppose que ton soft ignore ces variable d’environnement et les override.

Du coup, pas sur que tu puisse faire mieux.

Effectivement, j'ai un peu joué avec les clés de registre avant de m'apercevoir que ça ne servait à rien. Donc je pense aussi qu'il passe par-dessus.

Même pip install --user module ne peut rien faire ? Même dans un virtualenv ?

Dis, c'est quoi le logiciel ? des fois il peut y avoir un package manager camouflé dedans si ça se trouve. (j'y crois pas trop, mais l'espoir fait vivre)

comme je disais je ne peux pas modifier l'environnement, donc pas de virtualenv. Par contre j'avais pas testé le pip install --user module, mais ça ne marche pas (pas les droits).

C'est Maya, qui utilise une config particulière de python appelée mayapy (de manière très originale)

mince, je voulais commenter, et j'ai fait un réponse à la place.

Dans ce cas, je crains pour toi : de ma maigre expérience, la façon dont tu t'y prends est probablement la "moins sale" quand il s'agit de 'python scripting capability' fournie avec un soft.

Cela dit, ça implique probablement que tu auras de grosses difficultés pour des modules plus exigeants à l'installation comme numpy ou autres.

Peut-être t'est-il possible de contourner la limitation en utilisant mayapy pour appeler un autre interpréteur ?

À ce niveau, c'est pas de l'aide qu'il te faut, c'est un compte utilisateur. Voit avec le service informatique, si c'est eux qui font ça ; ils doivent aussi savoir ce que tu peux faire voir trouver un arrangement.

Enfin, le recours à la copie directe des modules dans ton dossier est peut-être la meilleure solution.

À ta place, je créerais un mini système ; j'installerais les modules avec

pip install --target chemin/vers/répertoire/autorisé/où/je/met/tous/mes/modules module

et m'assurerait que tout soit bien rangé dans un dossier dédié avec le PYTHON_PATH qui pointe là dessus.

Et si tu peux pas changer le PYTHON_PATH… installe directement les modules à la racine de ton projet. C'est dégueux, mais ça fonctionne.
(à tout hasard, enlève les droits d'écriture sur les modules installés comme ça. Ça évite de les modifier par erreur)

Votre réponse

Preview

Votre nom à afficher ( en option ):
Vie privée: . Votre adresse de messagerie ne sera utilisée que pour l'envoi de ces notifications .
Vérification anti -spam:
Pour éviter cette vérification à l'avenir, Connectez vous ou inscrivez vous.
...