本文主要講兩件事情:
用homebrew安裝opencv
解決macOS sierra10.12,安裝opencv報(bào)錯(cuò):QTKIT/QTKIT.h file
## 用homebrew 安裝opencv
這個(gè)本文就不說(shuō)了吧!到處都是!
(不得不吐槽一下中國(guó)的博客,搜索了20多個(gè)博客全部都是一摸一樣的解決方案問(wèn)題是還不能解決問(wèn)題。??)
## 解決安裝opencv報(bào)錯(cuò)
用homebrew安裝opencv3,結(jié)果編譯報(bào)錯(cuò)。下面貼出報(bào)錯(cuò)的make命令。
[ 66%] Built target opencv_photo/tmp/opencv3-20161011-39738-1h8e3c8/opencv-3.1.0/modules/videoio/src/cap_qtkit.mm:46:9: fatal error: 'QTKit/QTKit.h' file not found#import
^1 error generated.make[2]: *** [modules/videoio/CMakeFiles/opencv_videoio.dir/src/cap_qtkit.mm.o] Error 1make[2]: *** Waiting for unfinished jobs....make[1]: *** [modules/videoio/CMakeFiles/opencv_videoio.dir/all] Error 2make: *** [all] Error 2
從上面可以看出問(wèn)題在于 ‘QTKit.h’ file not found.
于是搜索了一番,發(fā)現(xiàn)大多數(shù)博客提出的解決方案是
從未升級(jí)到10.12的mac中復(fù)制QTKit.framework
但是這種方法只能是揚(yáng)湯止沸,從osx系統(tǒng)本身來(lái)說(shuō)破壞了系統(tǒng)的閉環(huán),后面會(huì)造成系統(tǒng)混亂。其實(shí)主要的原因是:Apple的API Reference QTKit 提到OS X v10.9后的系統(tǒng)對(duì)QTKit.framework將不做支持,替代框架為AVFoundation .
最終到opencv和homebrew/science找尋有沒(méi)有人提出issue和對(duì)應(yīng)大神的解決方案。結(jié)果真找到了 在opencv下面pull request #7266 已經(jīng)合并,這個(gè)merge已經(jīng)是最新的版本,說(shuō)明有可能已經(jīng)把qtkit.framework代替為了AVFoundation 。
鐺鐺鐺!!
Brew下面有一個(gè)命令`
--HEAD? ? Install HEAD version
意思就是安裝時(shí)候加上—HEAD就能安裝與當(dāng)前系統(tǒng)匹配的master版本。
brew install opencv3 --HEAD
然后你要做的就是喝杯??!完成了。
==> Summary? /usr/local/Cellar/opencv3/HEAD-73a8fa8_4: 285 files, 46.4M, built in 31 minutes 5 seconds