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

MacBook运行Python3 Flask应用无法加载gobject-2.0-0如何解决?

问题报错

OSError: cannot load library 'gobject-2.0-0': dlopen(gobject-2.0-0, 2): image not found. Additionally, ctypes.util.find_library() did not manage to locate a library called 'gobject-2.0-0'

该报错由Mac系统运行依赖WeasyPrint的Python项目触发,已安装glib仍报错可按以下步骤排查解决:

解决方案步骤
  • 步骤1:添加Homebrew库路径到系统环境变量
    Homebrew安装的依赖默认不会加入系统库搜索路径,按芯片类型执行对应命令:
    • Apple Silicon(M系列芯片):
    export DYLD_LIBRARY_PATH=/opt/homebrew/lib:$DYLD_LIBRARY_PATH
    export DYLD_FALLBACK_LIBRARY_PATH=/opt/homebrew/lib:$DYLD_FALLBACK_LIBRARY_PATH
    
    • Intel x86芯片:
    export DYLD_LIBRARY_PATH=/usr/local/lib:$DYLD_LIBRARY_PATH
    export DYLD_FALLBACK_LIBRARY_PATH=/usr/local/lib:$DYLD_FALLBACK_LIBRARY_PATH
    
    执行完成后先运行python3 -c "from weasyprint import HTML"测试是否还报错,可正常导入再启动Flask应用。如果需要永久生效,可将上述命令写入当前用户的Shell配置文件(/.zshrc或/.bash_profile)中,重启终端后生效。
  • 步骤2:补全WeasyPrint所需的全部系统依赖
    仅安装glib不足以支撑WeasyPrint运行,执行以下命令安装全量依赖:
    brew install pango cairo libffi gdk-pixbuf
    
    安装完成后再执行导入测试验证。
  • 步骤3:创建库文件软链接适配搜索名称
    如果系统已存在libgobject-2.0.dylib但仍找不到gobject-2.0-0,可手动创建软链接适配搜索名称:
    • Apple Silicon(M系列芯片):
    ln -s /opt/homebrew/lib/libgobject-2.0.dylib /opt/homebrew/lib/libgobject-2.0-0.dylib
    
    • Intel x86芯片:
    ln -s /usr/local/lib/libgobject-2.0.dylib /usr/local/lib/libgobject-2.0-0.dylib
    
  • 步骤4:适配虚拟环境配置
    若使用venv、conda等虚拟环境运行项目,需在激活虚拟环境后再执行上述环境变量设置操作,也可将环境变量命令写入虚拟环境的激活脚本中,避免每次手动执行。

内容的提问来源于stack exchange,提问作者Harmeet Singh Pable

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 22:18:02