MAC 安装Dlib

记录下自己在安装 python Dlib时踩得坑.

其中参考了这边文章

http://www.jianshu.com/p/3e0b7d1ddc56

安装dlib 需要好多的依赖!!

$ brew install openblas

我就是没有安装这个所以报奇怪的错误问题...

$ brew install opencv

安装dlib

我用pip安装dlib各种有问题 相信有不少人也是.所以我就先把pip安装的dlib卸载了 然后到

https://github.com/davisking/dlib下载了源文件

下载后解压,安装dlib

cd dlib/examples

mkdir build

cd build

cmake ..

cmake --build . --config Release

安装python模块

cd dlib

sudo python setup.py install

安装的时候 我就又出错了!!!

Call Stack (most recent call first):

/usr/local/Cellar/cmake/3.9.1/share/cmake/Modules/FindBoost.cmake:875 (_Boost_COMPONENT_DEPENDENCIES)

/usr/local/Cellar/cmake/3.9.1/share/cmake/Modules/FindBoost.cmake:1503 (_Boost_MISSING_DEPENDENCIES)

/Users/joe/Downloads/dlib-master/dlib/cmake_utils/add_python_module:74 (FIND_PACKAGE)

CMakeLists.txt:9 (include)

-- Could NOT find Boost

找不到boost!!!明明之前已经通过brew安装过boost 跟 boostpython的 怎么跟我说找不到!!??

于是根据提示

To compile Boost.Python yourself download boost from boost.org and then go into the boost root folder

--and run these commands:

--./bootstrap.sh --with-libraries=python

--./b2

--sudo ./b2 install

自己编译了一份安装成功..当我以为万事大吉的时候 运行软件 尼玛又报错了

unsafe use of relative rpath libboost_python.dylib

我擦 这是什么鬼 搜索一番之后说是不能相对路径 需要我们手动改成绝对路径

sudo install_name_tool -change libboost_python.dylib /usr/local/lib/libboost_python.dylib /Library/Python/2.7/site-packages/dlib-19.4.99-py2.7-macosx-10.12-intel.egg/dlib/dlib.so

sudo install_name_tool -change 需要改动的路径 修改后的路径 需要修改的so文件 上面的命令就是这个格式 可以自己手动调整 改动后可意用 otool -L /Library/Python/2.7/site-packages/dlib-19.4.99-py2.7-macosx-10.12-intel.egg/dlib/dlib.so 这个来看看自己替换成功没

在运行程序 还是报错TypeError: imread() got an unexpected keyword argument 'mode'

看了看 原来是因为mac自带的模块版本太低了 我们需要更新 但是自带的不能直接pip update 我们需要

点击Mac电脑的苹果图标

选择 重新启动

按住 command+R,直到进入还原模式

选择实用工具,然后点击 终端

输入 csrutil disable 按下回车

重启电脑

这样就将“SIP“关闭了。

然后我们使用 pip 安装升级numpy、scipy等相关的包。

问题是解决了,但是如果到这里就认为已经万事大吉了,其实是大错特错了。苹果官方之所以设置“SIP“主要是考虑到系统的安全性问题。所以,我们最好还是将“SIP“打开。打开的方式如下:

1. 点击Mac电脑的苹果图标

2. 选择 重新启动

3. 按住 command+R,直到进入还原模式

4. 选择实用工具,然后点击 终端

5. 输入 csrutil enable 按下回车

6. 重启电脑

万事大吉,收工睡觉!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容