【发布时间】:2017-09-07 04:55:12
【问题描述】:
我在部署使用 openCV 作为外部库的 QT 应用程序时遇到了困难。
在http://doc.qt.io/qt-5/osx-deployment.html 页面上写着:To include a 3rd party library in the application bundle, copy the library into the bundle manually, after the bundle is created.
那么我应该在.app 文件夹中复制到哪里呢?
还有http://www.dafscollaborative.org/opencv-deploy.html 博客说要使用install_name_tool 来部署带有Qt 应用程序的openCV,但我不清楚他使用的路径,并且在我的情况下它给出了错误。
那么,我应该如何使用 opencv 库部署我的 QT 应用程序?
运行otool -L MyApplication.app/Contents/MacOS/MyApplication 给了我以下信息:
@rpath/libopencv_calib3d.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_features2d.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_highgui.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_videoio.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_imgcodecs.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_video.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_photo.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_ml.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_imgproc.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_flann.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_core.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/QtWidgets.framework/Versions/5/QtWidgets (compatibility version 5.10.0, current version 5.10.0)
@rpath/QtGui.framework/Versions/5/QtGui (compatibility version 5.10.0, current version 5.10.0)
@rpath/QtCore.framework/Versions/5/QtCore (compatibility version 5.10.0, current version 5.10.0)
/System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
@rpath/QtXml.framework/Versions/5/QtXml (compatibility version 5.10.0, current version 5.10.0)
/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 307.5.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1238.50.2)
【问题讨论】:
-
应用中包含的 openCV 库出现什么错误?
-
@MichaelDautermann 它在我的本地系统上运行良好,但是当我将 dmg 共享给其他非 qt、非 opencv 系统运行时,双击时它甚至无法启动。
-
第一个链接失效,已被doc.qt.io/qt-5/macos-deployment.html替换
标签: c++ qt deployment