6
votes

I'm getting an error when trying to install dlib on Python 3.7 on macOS with

pip3 install dlib

I have installed CMake, so that is not the problem.
I'm getting these error messages:

Failed building wheel for dlib

and

Command "/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7 -u -c "import setuptools, tokenize;__file__='/private/var/folders/j2/nvk5521j2vn9s1w95_0vlwkm0000gn/T/pip-install-ls2e_3mr/dlib/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /private/var/folders/j2/nvk5521j2vn9s1w95_0vlwkm0000gn/T/pip-record-hy3hu262/install-record.txt --single-version-externally-managed --compile" 
failed with error code 1 in /private/var/folders/j2/nvk5521j2vn9s1w95_0vlwkm0000gn/T/pip-install-ls2e_3mr/dlib/ 

at the end in red. The reason I need dlib is to install face_recognition.

6
It installs successfully for me on python 3.7.2, pip3 19.0.2, cmake 3.13.4, dlib 19.16.0, and macOS 10.13.6. A few questions: (1) How did you install Python3 and CMake? (2) What is your MacOS version?Gino Mempin
I installed CMake with pip3 install cmake. I am on macOS 10.14.3. I installed Python 3.7.2 from the website just a few days ago. I am using CMake 3.13.3owcs

6 Answers

9
votes

I think there's more to the error message and it's probably related to CMake, either it's not installed properly or it's not compatible with the pip3 install dlib.

I suggest using Homebrew to install Python3 (which includes pip3) and CMake. Homebrew manages the installation of packages, tools, libraries that might depend on system-related tools, paths, etc. It also prevents you from having to use sudo to install stuff on your system.

  1. Install Homebrew

    • See the "Install Homebrew" section of https://brew.sh/
    • Basically:
      $ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
      
  2. Install Python3 (and pip3) using Homebrew

  3. Check Python installation

    $ python3 -V
    $ python3 -m pip -V
    
  4. Install CMake using Homebrew

  5. Check CMake installation

    $ brew info cmake
    $ cmake --version
    
  6. Finally, install dlib with pip

    $ python3 -m pip install dlib
    

If you don't want to use Homebrew (for some reason), you can try installing CMake for Mac directly using the installers (dmg or tar.gz) from here: https://cmake.org/download/.

4
votes
  1. Install Homebrew from here

  2. A bunch of dependencies are needed for dlib:

    brew install cmake
    brew install boost
    brew install boost-python
    brew install dlib
    pip3 install numpy
    pip3 install scipy
    pip3 install scikit-image
    pip3 install dlib
    
  3. If this does not work, try:

    python3 -m pip install dlib
    
3
votes

dlib is dependent on cmake so you need to install that first. You just need to run following commands on your terminal:

$ brew install cmake 
$ pip install cmake 
$ brew install dlib 
$ pip install dlib
1
votes
$ pip3 install --upgrade pip

$ pip3 install global

$ pip3 install cmake

$ pip3 install dlib
$ brew install dlib
$ sudo pip install dlib
0
votes

You can install the conda-forge Dlib package by running


conda install -c conda-forge dlib

Conda-forge has made sure to resolve all the dependency conflicts, so I had no issues with the installation. They have pre-built binaries for Windows, Linux, and Mac OS, and Python 2.7 through 3.8. The current package (at the time of this writing) is based on Dlib v19.19.

0
votes

The only thing you need to do, I guess, is run pip3 install dlib with sudo.

sudo pip3 install dlib