win10下安裝python3.5的dlib 19.17庫

按說安裝dlib很簡單,直接使用pip3 install dlib即可安裝了;在Linux系統(tǒng)下很方便寄雀,使用這條命令就可以安裝成功;但是在windows下,會出現(xiàn)編譯錯誤就斤。

在windows下安裝dlib最新版本19.17绷旗,是非常麻煩和耗時的一件事情,里面有很多坑邦尊,很難編譯成功疑苫。網(wǎng)上很多資料都有介紹曲横,試了還是沒有成功。我結(jié)合網(wǎng)上資料和個人摸索黍匾,成功完成dlib 19.17的編譯和安裝。

dlib19.17編譯主要依賴幾個工具:CMake,Boost和VS 2017(好像VS 2015以上的版本都可以)责语;需要注意的是win10 64位系統(tǒng),以上工具和編譯都要采用64位的系統(tǒng)顽照。為了安裝簡單谓媒,建議電腦上只安裝python 3.5,不要安裝其他版本的python,以免設(shè)置不當(dāng)編譯出錯贬堵。

1. CMake工具安裝

由于我是win10 64位系統(tǒng)黎做,所以選擇cmake-3.14.3-win64-x64.msi進(jìn)行下載安裝宏所。這個安裝比較簡單浓镜,按默認(rèn)一步步安裝即可禽车,不做解釋。一般是安裝在C:\Program Files\CMake\bin目錄逸月。


2. 安裝VC++編譯工具

要求VS 2015以上的版本栓撞,特別是VSVC++版本要滿足dlib編譯要求,最好是VS2017并且安裝過更新的版本碗硬。為什么安裝一個VS 2017要描述這么啰嗦瓤湘,因為這個是編譯dlib的關(guān)鍵,如果版本和工具集沒有安裝對恩尾,編譯就不會成功弛说,還不知道錯誤發(fā)生在哪里。我就是被這個折騰了一天時間特笋。

dlib的編譯要求(在dlib-19.17.0\dlib\cmake_utils\set_compiler_specific_options.cmake描述如下):

(安裝VSVC++ version 15.9? v14.16版本即可剃浇,如下圖所示版本)

因為我們只需要VC++工具集編譯,所以只需要安裝VS 2017社區(qū)版本Visual Studio Community 2017即可猎物』⑶簦可以直接在官網(wǎng)https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/下載安裝。下載vs2017_community.exe,一步步安裝即可蔫磨,主要安裝使用C++的桌面開發(fā)淘讥、使用C++的Linux開發(fā)和Visual Studio擴(kuò)展開發(fā)三個模塊,選項如下:

3.設(shè)置編譯的環(huán)境變量(系統(tǒng)變量):

在windows系統(tǒng)環(huán)境變量中堤如,對Path變量添加如下幾個VS2017和Cmake的路徑(主要是cl.exe和cmake.exe編譯工具和頭文件的搜索路徑)蒲列,如下圖所示:

設(shè)置完環(huán)境變量后窒朋,重新打開cmd命令行窗口,分別執(zhí)行cl.exe和cmake.exe驗證一下蝗岖,是否設(shè)置成功侥猩;這兩條命令可以執(zhí)行成功,表示設(shè)置OK抵赢。(注意這里一定要是14.16.27023以上的版本欺劳,如果是14.10.25017版本,請先升級VS2017的更新铅鲤。我之前使用14.10.25017編譯失敾帷)


4.? boost工具下載源代碼,編譯和安裝

使用pip install boost安裝最簡單邢享、快捷鹏往,但是可能是目前可以安裝的版本太低的原因,會導(dǎo)致編譯dlib不成功骇塘。這里我是安照網(wǎng)上資料介紹伊履,采用下載源代碼方式進(jìn)行編譯安裝的。

boost官網(wǎng):https://www.boost.org/?(國外網(wǎng)站绪爸,在國內(nèi)訪問都比較慢)

從官網(wǎng)下載最新的boost_1_70_0.zip文件湾碎,成功后解壓(隨便那個目錄,可以直接在主目錄下解壓奠货;我解壓目錄為C:\boost_1_70_0介褥,避免使用中文、超長名稱或者有空格的目錄名稱递惋,避免意外錯誤)柔滔,然后在編譯和安裝。

STEP1.進(jìn)入解壓后的目錄萍虽,執(zhí)行bootstrap.bat批處理命令:

在執(zhí)行bootstrap.bat前睛廊,會調(diào)用cl.exe,需要設(shè)置vc變量杉编;先執(zhí)行vc設(shè)置環(huán)境變量的批處理vcvars64.bat超全,該文件位于我的機(jī)器C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build目錄中;否則編譯出錯邓馒,出現(xiàn)”fatal error C1034錯誤:c:\boost_1_70_0\tools\build\src\engine\jam.h(71) : fatal error C1034: ctype.h: 不包括路徑集 compile.c“ 嘶朱。如果成功就會生成b2.exe、bjam.exe以及project-config.jam文件光酣。

STEP2. 執(zhí)行 b2 install疏遏,這步非常耗費(fèi)時間,大概要1~2個小時(由電腦性能決定)

STEP3.?執(zhí)行?b2 -a --with-python address-model=64 toolset=msvc runtime-link=static


在boost_1_70_0/stage/lib目錄下生成這兩個lib文件:

STEP4.將編譯好的boost 文件夾和lib加入到環(huán)境變量

設(shè)置windows的系統(tǒng)變量BOOST_LIBRARYDIR和BOOST_ROOT如下:

5.下載dlib源代碼,編譯财异、安裝

dlib官網(wǎng)為:http://dlib.net/

點(diǎn)擊Download dlib ver 19.17下載源代碼dlib-19.17.0.tar.gz到本地倘零。解壓到c:\dlib-19.17.0目錄。為了保險起見再次運(yùn)行vcvars64.bat文件戳寸,然后執(zhí)行python setup.py install命令進(jìn)行編譯和安裝呈驶。




這樣已經(jīng)將dlib庫安裝到環(huán)境中了履恩。也可以使用python setup.py bdist_wininst命令打包成exe安裝程序,給其他人安裝使用背蟆。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末禁偎,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子晦譬,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,311評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件锈拨,死亡現(xiàn)場離奇詭異,居然都是意外死亡羹唠,警方通過查閱死者的電腦和手機(jī)佩微,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來一疯,“玉大人夺姑,你說我怎么就攤上這事∶级茫” “怎么了废膘?”我有些...
    開封第一講書人閱讀 152,671評論 0 342
  • 文/不壞的土叔 我叫張陵站削,是天一觀的道長许起。 經(jīng)常有香客問我,道長猛频,這世上最難降的妖魔是什么狮崩? 我笑而不...
    開封第一講書人閱讀 55,252評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己搭儒,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,253評論 5 371
  • 文/花漫 我一把揭開白布德撬。 她就那樣靜靜地躺著躲胳,像睡著了一般坯苹。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,031評論 1 285
  • 那天静袖,我揣著相機(jī)與錄音觉鼻,去河邊找鬼。 笑死队橙,一個胖子當(dāng)著我的面吹牛滑凉,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播喘帚,決...
    沈念sama閱讀 38,340評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼咒钟!你這毒婦竟也來了吹由?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,973評論 0 259
  • 序言:老撾萬榮一對情侶失蹤朱嘴,失蹤者是張志新(化名)和其女友劉穎倾鲫,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體萍嬉,經(jīng)...
    沈念sama閱讀 43,466評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡乌昔,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,937評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了壤追。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片磕道。...
    茶點(diǎn)故事閱讀 38,039評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖行冰,靈堂內(nèi)的尸體忽然破棺而出溺蕉,到底是詐尸還是另有隱情,我是刑警寧澤悼做,帶...
    沈念sama閱讀 33,701評論 4 323
  • 正文 年R本政府宣布疯特,位于F島的核電站,受9級特大地震影響肛走,放射性物質(zhì)發(fā)生泄漏漓雅。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,254評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望邻吞。 院中可真熱鬧组题,春花似錦、人聲如沸吃衅。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽徘层。三九已至峻呕,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間趣效,已是汗流浹背瘦癌。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留跷敬,地道東北人讯私。 一個月前我還...
    沈念sama閱讀 45,497評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像西傀,于是被迫代替她去往敵國和親斤寇。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,786評論 2 345

推薦閱讀更多精彩內(nèi)容