You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

cx_Freeze打包含pyvisa的Python脚本后找不到VISA实现如何解决

解决cx_Freeze打包pyvisa程序报错问题
  • 补全打包依赖
    pyvisa-py属于pyvisa的动态加载后端,cx_Freeze默认不会自动识别打包,需要手动在setup.py的packages配置中添加相关依赖,修改后的buildOptions配置参考如下:
buildOptions = dict(
        packages = ['matplotlib.backends.backend_tkagg','matplotlib.figure',
        'tkinter','numpy','pyvisa','pyvisa_py','serial','usb'],
        includes = [],
        include_files = [],
        excludes = []
)

注:time属于Python标准库,无需手动加入packages列表。

  • 显式指定VISA后端
    修改pyvisa初始化代码,强制指定使用pyvisa-py后端,避免运行时自动查找实现失败,将原来的rm = visa.ResourceManager()替换为:
rm = visa.ResourceManager('@py')
  • 配置Linux设备访问权限
    Ubuntu系统下访问串口/USB类硬件需要对应权限,执行如下命令将当前用户加入设备访问用户组,执行后重启系统或重新登录生效:
    sudo usermod -aG dialout $USER

修改完成后重新执行打包命令即可。

内容的提问来源于stack exchange,提问作者Yan Araújo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 02:27:01