Mac M1运行Flask项目报错:找不到cairo-2库
解决Mac M1芯片上Flask项目提示
OSError: no library called "cairo-2" was found的问题 核心问题原因
Mac M1芯片的Homebrew默认安装路径为/opt/homebrew,而非Intel芯片的/usr/local,你之前配置的环境变量指向了错误的库路径,导致Python无法定位到cairo库。
具体解决步骤
确认cairo的实际安装路径
执行命令:brew --prefix cairoM1设备上输出应为
/opt/homebrew/opt/cairo,对应的库目录是/opt/homebrew/opt/cairo/lib。修正环境变量配置
编辑当前Shell的配置文件(M1默认用zsh,编辑~/.zshrc;若用bash则编辑~/.bashrc),添加以下内容:export DYLD_FALLBACK_LIBRARY_PATH=/opt/homebrew/opt/cairo/lib:$DYLD_FALLBACK_LIBRARY_PATH执行命令使配置生效:
source ~/.zshrc # 若用bash则执行 source ~/.bashrc重新安装相关Python依赖
先卸载之前可能安装错误的包:pip uninstall -y cairocffi pycairo再重新安装:
pip install cairocffi # 若项目依赖pycairo则执行 pip install pycairo验证修复结果
执行以下Python代码验证cairo是否能正常加载:import cairocffi cairocffi.install_as_pycairo() print("Cairo库加载成功")无报错则说明问题已解决。
内容的提问来源于stack exchange,提问作者zh0tx
相关产品推荐
相关产品推荐

