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

M1 MacBook Pro导入dlib报错:_png_do_expand_palette_rgb8_neon符号未找到

解决M1 MacBook Pro上VSCode导入dlib时的_png_do_expand_palette_rgb8_neon符号缺失错误

这个错误源于dlib编译时链接的libpng版本与M1架构不兼容,以下是几个针对性的解决方案:

方案1:手动指定libpng路径编译dlib

  1. 清理现有冲突依赖:
    pip uninstall -y dlib
    brew uninstall libpng
    
  2. 用Homebrew重新安装适配arm64的libpng:
    brew install libpng
    
  3. 配置环境变量,让pip编译dlib时定位到正确的libpng:
    export CPATH=/opt/homebrew/include
    export LIBRARY_PATH=/opt/homebrew/lib
    pip install dlib --no-binary :all:
    

方案2:使用conda环境适配M1架构

conda-forge提供了预编译的arm64版本dlib,无需手动编译:

  1. 创建并激活新conda环境:
    conda create -n dlib_env python=3.9
    conda activate dlib_env
    
  2. 安装适配的dlib:
    conda install -c conda-forge dlib
    
  3. 在VSCode左下角状态栏切换解释器到这个conda环境

方案3:确保VSCode终端以arm64架构运行

若VSCode通过Rosetta启动,终端可能默认用x86_64架构,导致依赖安装不兼容:

  1. 打开VSCode设置(快捷键Cmd+,),搜索terminal.integrated.profiles.osx
  2. 修改默认终端配置,添加arm64架构前缀(以zsh为例):
    "terminal.integrated.profiles.osx": {
        "zsh (arm64)": {
            "path": "/bin/zsh",
            "args": ["-l", "-c", "arch -arm64 zsh"]
        }
    },
    "terminal.integrated.defaultProfile.osx": "zsh (arm64)"
    
  3. 重启VSCode终端,重新安装dlib:
    pip uninstall -y dlib
    pip install dlib
    

额外注意事项

  • 确认VSCode是原生arm64版本:打开苹果菜单→关于本机→系统报告→应用程序,查看VSCode的“架构”是否为ARM64,若为x86_64,请卸载后从官网重新下载arm64版本
  • 避免混用架构:如果之前安装的是x86_64版本Python,建议卸载后从python.org下载arm64版本重新安装

内容的提问来源于stack exchange,提问作者Andrew

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 06:35:16