OpenCV 4..1.2 在 macOS 中安装后,文件目录已和 OpenCV 3.X 不同。
macOS 下 Qt 5.12.6 使用 OpenCV 4.1.2 在 .pro 文件末尾加入以下语句:
macx{
INCLUDEPATH += /usr/local/Cellar/opencv/4.1.2/include/opencv4/opencv2/
INCLUDEPATH += /usr/local/Cellar/opencv/4.1.2/include/
INCLUDEPATH += /usr/local/Cellar/opencv/4.1.2/include/opencv4/
LIBS += -L/usr/local/Cellar/opencv/4.1.2/lib -lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_imgcodecs
}
完整工程文件示例:
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
CONFIG += c++11
# The following define makes your compiler emit warnings if you use
# any Qt feature that has been marked deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS
# You can also make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
SOURCES += \
main.cpp \
mainwindow.cpp
HEADERS += \
mainwindow.h
FORMS += \
mainwindow.ui
# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target
macx{
INCLUDEPATH += /usr/local/Cellar/opencv/4.1.2/include/opencv4/opencv2/
INCLUDEPATH += /usr/local/Cellar/opencv/4.1.2/include/
INCLUDEPATH += /usr/local/Cellar/opencv/4.1.2/include/opencv4/
LIBS += -L/usr/local/Cellar/opencv/4.1.2/lib -lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_imgcodecs
}