Подтвердить что ты не робот

PyCharm не может найти библиотеку

Я использую PyCharm 5 для запуска Python 2.7 (Anaconda) script в Ubuntu. Мой script импортирует модуль с import tensorflow, но это вызывает ошибку ImportError: libcudart.so.7.0: cannot open shared object file: No such file or directory. Таким образом, кажется, что библиотеке libcudart.so.7.0 необходим этот модуль, но он не может быть найден.

Теперь я видел, что эта библиотека находится на моей машине в /usr/local/cuda-7.0/targets/x86_64-linux/lib. Итак, в PyCharm я пошел в Settings->Project Interpreters->Interpreter Paths. У этого был список путей, таких как /home/karnivaurus/Libraries/Anaconda/python2.7. Затем я добавил в этот список упомянутый выше путь, который содержит требуемую библиотеку.

Однако это не устранило проблему. Я все еще ошибаюсь, говоря, что libcudart.so.7.0 не может быть найден. Если я запустил свой script из оболочки, хотя (python myfile.py), тогда он работает нормально.

Как я могу сообщить PyCharm, где найти эту библиотеку?


Я заметил, что если у меня print sys.path в моем script, пути, которые он распечатывает, полностью отличаются от тех, что находятся в Settings->Project Interpreters->Interpreter Paths... если они будут одинаковыми?

4b9b3361

Ответ 1

Путь к вашей библиотеке cuda мне кажется странным. Я ожидаю, что это будет /usr/local/cuda-7.0/lib64 или /usr/local/cuda-7.0/lib.

Вы выполнили все процедуры cuda installation?

Если вы введете env в командной строке, вы видите путь к cuda в LD_LIBRARY_PATH?


Обновление от комментариев ниже:

Проблема заключается в том, что PyCharm был вызван с рабочего стола и не получил правильных переменных окружения. Решение: либо

  • вызывать из командной строки,
  • создайте script для установки среды, а затем вызовите и создайте ссылку на этот script на рабочем столе,
  • или задать переменные среды на рабочем столе

Ответ 2

Я столкнулся с этой проблемой совсем недавно, используя удаленный отладчик, однако я считаю, что это все-таки решение. Я просто добавил следующее в раздел "Переменные среды" в параметрах "Параметры запуска/отладки", которые находятся в диалоговом окне "Выполнить > Редактировать конфигурации...": LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

Ответ 3

Хотя некоторые из этих ответов верны и могут работать, я не видел того, что конкретно запросил OP, и именно поэтому устанавливать среды для консоли python. Это можно сделать внутри pycharm по адресу:

Файл > Настройки > Сборка, выполнение, развертывание > Консоль > Консоль Python

В настройках там вы найдете место для определения переменных среды. Установите там LD_LIBRARY_PATH. введите описание изображения здесь

Ответ 4

Вы выбрали правильный интерпретатор python в своих настройках проекта? См. здесь.

У меня была аналогичная проблема, и смена интерпретатора была решена без необходимости создания нового значка.

Ответ 5

Измените свой pycharm.desktop, укажите переменную среды в exec, как показано ниже:

[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

поэтому pycharm найдет cuda