在macos python中安装dlib

Windows 因为环境配置相对复杂,网络上有很多社区编译好的 .whl 直接安装包;而 macOS(尤其是搭载 Apple Silicon M系列芯片的最新系统)通常需要我们在本地编译安装

在 Mac 上编译安装 dlib 其实非常简单,只要配齐基础的编译工具(如 cmake),系统就能自动完成编译。以下是针对最新 macOS 系统的完整安装指南:

🛠️ 第一步:安装基础编译工具

在编译 dlib 之前,需要确保你的 Mac 拥有 C++ 编译环境和 cmake 工具。

  1. 安装 Xcode Command Line Tools(如果你还没有安装过): 打开终端(Terminal),运行以下命令:

    复制代码
    xcode-select --install

    弹窗提示时点击"安装"即可。

  2. 安装 Homebrew(Mac 的包管理器,已安装请跳过):

    复制代码
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  3. 使用 Homebrew 安装 cmakedlib 强依赖 cmake 来进行构建。

    复制代码
    brew install cmake

🐍 第二步:在 Python 环境中安装 dlib

为了避免系统 Python 环境冲突,强烈建议你在 虚拟环境 (如 venvConda)中进行操作。

方法 A:直接通过 pip 安装(最推荐)

在最新版本的 pip 中,直接运行安装命令,系统会自动下载源码并在本地调用 cmake 进行编译。

复制代码
# 确保升级了 pip、setuptools 和 wheel
pip install --upgrade pip setuptools wheel

# 直接安装 dlib(这一步会自动进行本地编译,可能需要 2~5 分钟)
pip install dlib

💡 M系列芯片加速提示: 最新版的 dlib 已经能较好地支持 Apple Silicon。在编译时,它会自动检测并利用 Mac 的硬件加速。

方法 B:从源码编译安装(若 pip 报错时使用)

如果 pip install dlib 报错,手动下载源码编译是最稳妥的方法:

  1. 克隆 dlib 官方仓库:

    复制代码
    git clone https://github.com/davisking/dlib.git
    cd dlib
  2. 创建并进入构建目录:

    复制代码
    mkdir build
    cd build
  3. 配置并编译:

    复制代码
    cmake ..
    cmake --build .
  4. 回到根目录并安装到 Python 环境中:

    复制代码
    cd ..
    python setup.py install

✅ 第三步:验证安装

安装完成后,可以在终端进入 Python 交互模式验证是否成功:

复制代码
import dlib
print(dlib.__version__)

如果成功输出了版本号(例如 19.24.x),说明 dlib 已经完美躺在你的 Mac 里了!

⚠️ 常见坑点排查

  • 报错:CMAKE_CXX_COMPILER 相关错误 CMAKE_CXX_COMPILER 通常是因为 Xcode 命令行工具没有正确连接。可以尝试运行 sudo xcode-select --switch /Library/Developer/CommandLineTools 重置路径。

  • 权限问题 如果你没有使用虚拟环境,使用 pip 时可能会报权限错误。切记不要 轻易使用 sudo pip install,强烈建议用 python -m venv venv 起一个虚拟环境,或者加 --user 参数:pip install dlib --user

相关推荐
用户83562907805111 小时前
Python 操作 PDF 附件:添加、查看与管理指南
后端·python
宇宙之一粟19 小时前
乐企版式文件生成平台
java·后端·python
学测绘的小杨1 天前
CompassFusion:一个从 GNSS 到 GNSS/INS 组合导航的独立工程包
python
zzzzzz3102 天前
当产品经理说这个很简单:我用Python自动化处理奇葩需求的实战指南
python·pycharm·产品经理
雪隐2 天前
个人电脑玩AI-06让5060 Ti给你打工——不光能画画,Qwen3-TTS还能学人说话,连我老板都信了!
人工智能·后端·python
兵慌码乱2 天前
面向桌面端的资产管理系统分层架构设计与核心模块实现
python·系统架构·sqlite·pyqt5·数据库设计·桌面应用开发·mvc架构
hboot2 天前
AI工程师第三课 - 机器学习基础
python·scikit-learn·kaggle
顾林海3 天前
Agent入门阶段-编程基础-Python:流程控制
python·agent·ai编程
呱呱复呱呱3 天前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
曲幽3 天前
刚部署的 LibreTranslate 频频翻车?我掏出了 20 年前的 StarDict 词典,用 FastAPI 搭了个本地词典翻译 API
python·fastapi·web·translate·goldendict·libretranslate·stardict·pystardict