电脑上有OpenCV 2.4.13,在使用HomeBrew升级OSX到Sierra之后想安装OpenCV3,结果编译报错.这里贴出部分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 <QTKit/QTKit.h>
^
1 error generated.
make[2]: *** [modules/videoio/CMakeFiles/opencv_videoio.dir/src/cap_qtkit.mm.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [modules/videoio/CMakeFiles/opencv_videoio.dir/all] Error 2
make: *** [all] Error 2
这上面看到fatal error: 'QTKit/QTKit.h' file not found.于是Google了一下这个QTKit
找到有博客提出解决方案
关闭OSX的Rootless机制
从未升级到10.12的Mac中复制QTKit.framework
这种方式能暂时的解决问题,但从OSX迭代的角度来看,会给后面带来系统混乱的隐患.
然后接着找到Apple的API Reference QTKit 提到OS X v10.9后的系统对QTKit.framework将不做支持,替代框架为AVFoundation .
##Overview

在将OSX升级到Sierra后,尝试安装OpenCV3时遇到QTKit/QTKit.h文件未找到的错误。通过研究发现,从OS X v10.9开始,QTKit不再被支持,推荐使用AVFoundation替代。OpenCV已有一个Pull Requests(#7266)解决了此问题,但在merge后未发布新版本。通过Homebrew安装时添加特定选项,可以安装包含修复的master版本,从而成功解决编译问题。
最低0.47元/天 解锁文章
2285

被折叠的 条评论
为什么被折叠?



