提交 e46dd665 编写于 作者: mahuifa's avatar mahuifa

refactor:修改OpenCVDemo依赖OpenCV库问题

    1、构建时判断库路径是否存在,如果不存在则不构建当前工程;
    2、编译完成后自动安装依赖库到当前路径下,避免编译完成后运行失败。
上级 110f7d41
......@@ -10,4 +10,21 @@
#---------------------------------------------------------------------------------------
TEMPLATE = subdirs
SUBDIRS += VideoPlay
# CEF 库的路径, 如果路径为空则不编译当前工程
win32{
opencvPath = E:/lib/opencv_MSVC2/
}
unix:!macx{
}
# 判断库文件是否存在,如果不存在则终止编译
isEmpty($$opencvPath){
exists($$opencvPath){
SUBDIRS += VideoPlay
}else{
message(<<<<<<<<<<<<<<<< [OpenCV dll] The file path does not exist >>>>>>>>>>>>>>>>>>)
}
}else{
message(<<<<<<<<<<<<<<<< [OpenCV dll] The file path is NULL >>>>>>>>>>>>>>>>>>)
}
......@@ -40,14 +40,8 @@ qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target
# opencv需要带有ffmpeg才可以打开本地视频或者网络视频流,否则只能打开图片和摄像头
win32:CONFIG(release, debug|release): LIBS += -LE:/lib/opencv_MSVC2/build/x64/vc15/lib/ -lopencv_world460
else:win32:CONFIG(debug, debug|release): LIBS += -LE:/lib/opencv_MSVC2/build/x64/vc15/lib/ -lopencv_world460d
INCLUDEPATH += E:/lib/opencv_MSVC2/build/include
DEPENDPATH += E:/lib/opencv_MSVC2/build/include
# 定义程序版本号
VERSION = 1.1.1
VERSION = 1.1.2
DEFINES += APP_VERSION=\\\"$$VERSION\\\"
contains(QT_ARCH, i386){ # 使用32位编译器
......@@ -55,6 +49,35 @@ DESTDIR = $$PWD/../bin # 程序输出路径
}else{
DESTDIR = $$PWD/../bin64 # 使用64位编译器
}
# 连接opencv库opencv需要带有ffmpeg才可以打开本地视频或者网络视频流,否则只能打开图片和摄像头
win32{
opencvDLL.files += E:/lib/opencv_MSVC2/build/x64/vc15/bin/opencv_videoio_ffmpeg460_64.dll
CONFIG(release, debug|release){
LIBS += -LE:/lib/opencv_MSVC2/build/x64/vc15/lib/ -lopencv_world460
opencvDLL.files += E:/lib/opencv_MSVC2/build/x64/vc15/bin/opencv_videoio_msmf460_64.dll
opencvDLL.files += E:/lib/opencv_MSVC2/build/x64/vc15/bin/opencv_world460.dll
}else:CONFIG(debug, debug|release){
LIBS += -LE:/lib/opencv_MSVC2/build/x64/vc15/lib/ -lopencv_world460d
opencvDLL.files += E:/lib/opencv_MSVC2/build/x64/vc15/bin/opencv_videoio_msmf460_64d.dll
opencvDLL.files += E:/lib/opencv_MSVC2/build/x64/vc15/bin/opencv_world460d.dll
opencvDLL.files += E:/lib/opencv_MSVC2/build/x64/vc15/bin/opencv_world460.pdb
opencvDLL.files += E:/lib/opencv_MSVC2/build/x64/vc15/bin/opencv_world460d.pdb
}
INCLUDEPATH += E:/lib/opencv_MSVC2/build/include
DEPENDPATH += E:/lib/opencv_MSVC2/build/include
# 自动安装依赖文件和库文件
opencvDLL.path = $$DESTDIR
# msvc需要配置Custom Process Step: nmake install】或者【Custom Process Step: D:\Qt\Qt5.12.5\Tools\QtCreator\bin\jom.exe install】才生效,或者自己手动拷贝
# DebugRelease需要分别配置
# 执行之前先qmake,如果不想每次手动qmake,可以点击【工具】->【选项】->【构建和运行】->qmake->勾选【Run qmake every build
INSTALLS += opencvDLL # opencv库文件拷贝到path路径下
}
unix:!macx{
}
# msvc >= 2017 编译器使用utf-8编码
msvc {
greaterThan(QMAKE_MSC_VER, 1900){ # msvc编译器版本大于2015
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册