J'utilise PyCharm 5 pour exécuter un script Python 2.7 (Anaconda) dans Ubuntu. Mon script importe un module avec import tensorflow
, mais cela provoque l'erreur ImportError: libcudart.so.7.0: cannot open shared object file: No such file or directory
. Il semble donc que la bibliothèque libcudart.so.7.0
est nécessaire à ce module, mais il est introuvable.
Maintenant, j'ai vu que cette bibliothèque est sur ma machine dans /usr/local/cuda-7.0/targets/x86_64-linux/lib
. Donc, dans PyCharm, je suis allé à Settings->Project Interpreters->Interpreter Paths
. Il y avait une liste de chemins, tels que /home/karnivaurus/Libraries/Anaconda/python2.7
. J'ai ensuite ajouté à cette liste, le chemin mentionné ci-dessus qui contient la bibliothèque requise.
Cependant, cela n'a pas résolu le problème. Je reçois toujours une erreur me disant que libcudart.so.7.0
ne peut être trouvé. Si j'exécute mon script à partir du shell (python myfile.py
), alors ça marche bien.
Comment puis-je dire à PyCharm où trouver cette bibliothèque?
J'ai remarqué que si j'ai print sys.path
dans mon script, les chemins qu'il imprime sont entièrement différents de ceux de Settings->Project Interpreters->Interpreter Paths
... devraient-ils être les mêmes?
J'ai rencontré ce problème récemment en utilisant un débogueur distant, mais je pense que c'est toujours la même solution. Je viens d'ajouter ce qui suit à la section Variables d'environnement dans les options de configuration Exécuter/Déboguer trouvées dans la boîte de dialogue Exécuter> Modifier les configurations ...: LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
Le chemin vers votre bibliothèque cuda me semble étrange. Je m'attendrais à ce que ce soit /usr/local/cuda-7.0/lib64
ou /usr/local/cuda-7.0/lib
.
Avez-vous suivi toute la procédure installation cuda ?
Si vous tapez env
sur la ligne de commande, voyez-vous un chemin vers cuda dans votre LD_LIBRARY_PATH
?
Mise à jour à partir des commentaires ci-dessous:
Le problème est que PyCharm a été invoqué depuis le bureau et n'obtenait pas les bonnes variables d'environnement. La solution consiste à:
Bien que certaines de ces réponses soient correctes et puissent fonctionner, je n'ai pas vu ce que l'OP demandait spécifiquement, et c'est là que définir les environnements pour la console python. Cela peut être accompli à l'intérieur pycharm à:
Fichier> Paramètres> Build, Execution, Deployment> Console> Python Console
Dans les options, vous trouverez un endroit pour définir les variables d'environnement. Définissez LD_LIBRARY_PATH ici.
Modifiez votre pycharm.desktop
, spécifiez la variable d'environnement dans exec, comme ci-dessous:
[Desktop Entry]
Version=1.0
Type=Application
Name=Pycharm
Exec=env LD_LIBRARY_PATH=:/usr/local/cuda/lib64:/usr/local/cuda/lib64 /home/cwh/software/pycharm-2016.1.4/bin/pycharm.sh
Icon=/home/cwh/software/pycharm-2016.1.4/bin/pycharm.png
Name[zh_CN]=Pycharm
donc pycharm
trouvera cuda
Avez-vous sélectionné le bon python interprète dans les paramètres de votre projet? Voir ici .
J'ai eu un problème similaire et le changement d'interprète l'a résolu sans avoir à créer une nouvelle icône.