我正在使用PyCharm 5在Ubuntu中运行Python 2.7(Anaconda)脚本。我的脚本使用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
。如果我从shell运行我的脚本(python myfile.py
),那么它运行正常。
如何告诉PyCharm在哪里找到这个库?
我注意到如果我的脚本中有print sys.path
,那么它打印出的路径与Settings->Project Interpreters->Interpreter Paths
中的路径完全不同......它们是否相同?
答案 0 :(得分:30)
我最近刚使用远程调试器遇到了这个问题,但我相信它仍然是相同的解决方案。我刚刚将以下内容添加到Run>中的Run / Debug Configuration选项中的Environment Variables部分。编辑配置...对话框:LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
答案 1 :(得分:14)
你的cuda图书馆的路径对我来说似乎很奇怪。我希望它是/usr/local/cuda-7.0/lib64
或/usr/local/cuda-7.0/lib
。
您是否遵循了所有cuda installation程序?
如果您在命令行中输入env
,您是否在LD_LIBRARY_PATH
中看到了cuda的路径?
从以下评论中更新:
问题是PyCharm是从桌面调用的,并没有获得正确的环境变量。解决方案是:
答案 2 :(得分:6)
虽然其中一些答案是正确的,并且可以正常工作,但我还没有看到OP特别要求的内容,那就是为python控制台设置环境的地方。这可以在pycharm中完成:
档案>设置>构建,执行,部署>控制台> Python控制台
答案 3 :(得分:3)
编辑eof
,在exec中指定环境变量,如下所示:
pycharm.desktop
因此[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
答案 4 :(得分:2)
您是否在项目的设置中选择了正确的python解释器? 请参阅here。
我遇到了类似的问题,更改解释器解决了这个问题,而无需创建新图标。
答案 5 :(得分:0)
以下内容适用于Community edition 2019.3
要为项目全局设置:
File/Settings/Project/Project Interpreter