MAC 安裝Dlib

記錄下自己在安裝 python Dlib時踩得坑.

其中參考了這邊文章

http://www.itdecent.cn/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!!!明明之前已經(jīng)通過brew安裝過boost 跟 boostpython的 怎么跟我說找不到!!??

于是根據(jù)提示

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

自己編譯了一份安裝成功..當(dāng)我以為萬事大吉的時候 運行軟件 尼瑪又報錯了

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文件 上面的命令就是這個格式 可以自己手動調(diào)整 改動后可意用 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電腦的蘋果圖標(biāo)

選擇 重新啟動

按住 command+R,直到進入還原模式

選擇實用工具,然后點擊 終端

輸入 csrutil disable 按下回車

重啟電腦

這樣就將“SIP“關(guān)閉了。

然后我們使用 pip 安裝升級numpy、scipy等相關(guān)的包。

問題是解決了,但是如果到這里就認(rèn)為已經(jīng)萬事大吉了,其實是大錯特錯了。蘋果官方之所以設(shè)置“SIP“主要是考慮到系統(tǒng)的安全性問題。所以,我們最好還是將“SIP“打開。打開的方式如下:

1. 點擊Mac電腦的蘋果圖標(biāo)

2. 選擇 重新啟動

3. 按住 command+R,直到進入還原模式

4. 選擇實用工具,然后點擊 終端

5. 輸入 csrutil enable 按下回車

6. 重啟電腦

萬事大吉,收工睡覺!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容