對于配置dlib經(jīng)常出現(xiàn)的錯誤及解決方法:
- 如果遇到png.h文件找不到,確定附加庫目錄已經(jīng)包含dlib,使用"../external/libpng/png.h"去代替<png.h>即可
-
USER_ERROR__inconsistent_build_configuration__see_dlib_faq_2 以及 無法解析的外部符號的情況(主要是png、jpeg的)
解決思路:由于這個問題很麻煩,搜了半天也沒找到方法,后來在一篇博客看到讓用build生成的config.h替換原來dlib下的config.h實(shí)際上對于我的配置沒有用處,反而報了一大堆引用錯誤,然后打開兩個config.h發(fā)現(xiàn)里面其實(shí)是自己在cmake-gui里configure時多點(diǎn)的配置,原來的config.h是默認(rèn)配置,自己的里面有新#define的配置,所以確實(shí)應(yīng)當(dāng)更換掉不過要做好備份。所以問題不在這里,就看是不是引用庫出錯了,發(fā)現(xiàn)這幾個位置都設(shè)置好了,所以應(yīng)當(dāng)也不是這里的問題(借用一下比人的圖吧)
再然后,就是看是不是需要把external下的那三個文件夾內(nèi)容全部導(dǎo)入到資源文件下,然后試了一下各種錯誤又出來了,只好再次刪掉回到原點(diǎn)。
最后一個博客中看到在cmake中的紅框(借圖)
發(fā)現(xiàn)我自己正是這個框里的信息導(dǎo)致的,因為cmake檢測到了計算機(jī)自己在anaconda下已經(jīng)安好了這些lib所以他選擇不在自己家文件夾下再做一套,這就讓我們的應(yīng)用工作變得很麻煩,聲場的Release文件夾里的dlib19.19.0_release_64bit_msvc1900.lib也不含有和png、jpeg這些相關(guān)的配置,看到這里我就去給anaconda下手了,先把這些文件剪貼出來放到一個地方
其實(shí)我多搞出來了幾個,紅框里那仨出來了應(yīng)該就可以了,不用株連九族其實(shí),然后再次cmake編譯,這回出現(xiàn)了新的信息:
cmake說你這電腦里的太破太久我還是自己搞吧,不得不說這個編譯還是太懶···
所以就按照正常配置方式設(shè)置好,就可以用啦!總之,除了問題請關(guān)注cmke下的信息?。?!
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。