在PyCharm中,我添加了Python环境/usr/bin/python
.然而,
from gnuradio import gr
Run Code Online (Sandbox Code Playgroud)
作为未定义的引用失败.但是,它在命令行的Python解释器中工作正常.
GNURadio可以在Pycharm之外的python中正常工作.一切都安装和配置我想要的.
Gnuradio位于 /usr/local/lib/python2.7/site-packages/gnuradio
也:
PYTHONPATH =在/ usr/local/lib目录/ python2.7/site-packages中:/usr/local/lib/python2.7/site-packages/gnuradio
编辑:问题是Pycharm没有加载LD_LIBRARY_PATH
环境变量.如果我将它添加到Pychar的环境中,一切都有效.为什么不加载呢?
我在为gnuradio导入模块时遇到问题.首先,如果我只是从命令行运行python文件,一切都有效,并且所有内容在解释器中都可以正常加载.使用pycharm只有一个问题.此外,GNU Radio已正确安装.
PYTHONPATH=/usr/local/lib/python2.7/site-packages
Run Code Online (Sandbox Code Playgroud)
我添加了python解释器,并且由于模块从解释器加载得很好,我不知道为什么我必须添加pycharm的路径.无论如何,我添加了gnuradio
模块所在的位置:/usr/local/lib/python2.7/site-packages/gnuradio
; 但是,这是错误的.正确的加载路径是父目录:/usr/local/lib/python2.7/site-packages
.我想知道为什么会这样.
更重要的是,加载库后我得到了这个编译错误:
File "/usr/local/lib/python2.7/site-packages/gnuradio/gr/runtime_swig.py", line 24, in swig_import_helper
_mod = imp.load_module('_runtime_swig', fp, pathname, description)
ImportError: libgnuradio-pmt-3.7.2git.so.0.0.0: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)
有问题的文件位于/usr/local/lib
,但是我已经添加了所有可能的路径来告诉它它在哪里但没有运气.另外,我已添加/usr/lib:/usr/local/lib
到我的LD_LIBRARY_PATH
并运行ldconfig但没有成功.只有我能想到的东西.
我究竟做错了什么?
如果我不使用PyCharm,一切正常.这是一个关于Pycharm的问题.