通常后面紧跟库文件的名称
发布时间:2025-06-24 17:42:53 作者:北方职教升学中心 阅读量:439
LIBS
:这是一个变量,用于指定链接器在链接时需要链接的库文件。qmake配置OpenCV
打开Qt Creator,使用qmake来构建一个项目,构建完成后打开.pro文件
添加如下代码:
#配置opencv
INCLUDEPATH += D:/opencv/build/include \
D:/opencv/build/include/opencv2
Debug: {
LIBS += -lD:/opencv/build/x64/vc15/lib/opencv_world455d
}
Release: {
LIBS += -lD:/opencv/build/x64/vc15/lib/opencv_world455
}
代码解释:
INCLUDEPATH
INCLUDEPATH += D:/opencv/build/include \ D:/opencv/build/include/opencv2
:- 作用:
INCLUDEPATH
是一个变量,用于指定编译器在编译时搜索头文件的路径。
- 作用:
- 目的:在发布模式下,使用发布版本的 OpenCV 库,以便生成最终的可执行文件。具体来说,CMake 无法找到 OpenCV 的配置文件
OpenCVConfig.cmake
或opencv-config.cmake
。 - 路径:
D:/opencv/build/include
:这是 OpenCV 的主头文件目录,通常包含一些通用的头文件。
- 目的:通过将这些路径添加到
INCLUDEPATH
,编译器可以在编译时找到 OpenCV 的头文件,从而避免编译错误。 - 库文件:
opencv_world455
是 OpenCV 的发布库文件。 -l
:这是链接器的选项,用于指定要链接的库文件。生成、-l
:与调试配置相同,用于指定要链接的库文件。- 库文件:
opencv_world455d
是 OpenCV 的调试库文件。
.pro文件完整代码
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
CONFIG += c++17
# You can make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0SOURCES += \
main.cpp \
mainwindow.cppHEADERS += \
mainwindow.hFORMS += \
mainwindow.ui#配置opencv
INCLUDEPATH += D:/opencv/build/include \
D:/opencv/build/include/opencv2
Debug: {
LIBS += -lD:/opencv/build/x64/vc15/lib/opencv_world455d
}
Release: {
LIBS += -lD:/opencv/build/x64/vc15/lib/opencv_world455
}
# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target
如此一来,在Qt中OpenCV就已经配置完成啦!!!
使用时可能出现的问题
原因分析
编译器无法找到 QMainWindow
头文件。通常后面紧跟库文件的名称。imgproc
等。d
后缀表示调试版本。