在Mac OS X安装pyvisa后无法导入visa

1 投票
1 回答
1345 浏览
提问于 2025-04-18 04:17

我用Homebrew安装了Python,然后用pip安装了pyvisa,现在当我运行import visa时,出现了以下错误:

OSError: dlopen(/usr/local/vxipnp/linux/bin/libvisa.so.7, 6): image not found

看起来它在找NI-VISA的时候找错了地方,我该怎么解决这个问题呢?

在pyvisa的网站上,常见问题里说:

错误:找不到图像

这个错误发生在你提供了一个无效的VISA库路径时。请检查你在构造函数或配置文件中提供的路径。

但是我该怎么检查这个路径呢?

1 个回答

0

需要修改的文件是 vpp43.py。

不过,在 Mac OS 上通过 'pip' 或 'easy_install' 安装的 PyVISA 包会被放在 .egg 文件里:

$ /Library/Python/2.7/site-packages/PyVISA-1.5.dev4-py2.7.egg

我找不到修改这个的方法,所以我下载了原始代码并重新编译。

$ mkdir pyvisacode
$ cd pyvisacode
$ curl -OL https://github.com/hgrecco/pyvisa/tarball/master

下载后,解压文件:

$ tar -zxvf master

在同一个目录下会生成一个文件。接着,进入这个目录:

$ cd hgrecco-pyvisa-4cbdbc9/pyvisa/legacy

然后打开 Xcode 或其他文本编辑器。

$ open -a Xcode vpp43.py

在打开的 vpp43.py 文件中找到:

path = "/usr/local/vxipnp/linux/bin/libvisa.so.7"

把这一行注释掉,并替换成:

#path = "/usr/local/vxipnp/linux/bin/libvisa.so.7"
path = "/Library/Frameworks/visa.framework/visa"

现在你可以通过以下方式安装 PyVISA:

 $ cd ../../
 $ sudo python setup.py install

别忘了用 32 位的 Python 运行。更多详细信息可以在这里找到 http://bardagjy.com/?p=1245

希望下一个 PyVISA 更新能解决这个问题!

祝你好运!

撰写回答