如何让 OpenCV 成为我的 qt 项目的默认库?
How can I make OpenCV the default library for my qt projects?
请假设我想要 link OpenCV 库 Qt-creator,一般来说,我将使用 [=12 添加 headers =] 和 link 库使用 LIBS
变量,它在 qmake 文件中使用,但是如果我们在大多数项目中使用 OpenCV,那么我们每次都必须包含 OpenCV 库,所以有什么办法在创建项目时自动添加 opencv 库。
我每次都使用以下命令为我的项目添加 OpenCV 库。
INCLUDEPATH += -I/usr/local/include/opencv
LIBS += -L/usr/local/lib -lopencv_stitching -lopencv_superres ...and etc.
更新
我将为 OpenCV4 使用以下 headers:
INCLUDEPATH += /usr/local/include/opencv4
当你安装opencv时你必须同时安装opencv.pc
文件,这个文件可以用来简化它,因为Qt支持package.config,如果是这样,它会替换它显示的内容以下:
unix: CONFIG += link_pkgconfig
unix: PKGCONFIG += opencv
实际上 Qt Creator 提供了一种简单的方法,您只需右键单击您的项目名称,然后 select 选择添加库:
然后你会看到一个对话框,你必须select图书馆的类型:
在这种情况下我使用了第四个选项,并输入了库的名称:opencv。
然后按下一步和完成按钮。
1) 您可以在 mkspecs/features
目录中创建一个 .prf(项目功能)文件:
/usr/share/qt5/mkspecs/features/opencv.prf
INCLUDEPATH += -I/usr/local/include/opencv
LIBS += -L/usr/local/lib -lopencv_stitching -lopencv_superres ...and another libraries
现在只需将 CONFIG += opencv
添加到您的 .pro 文件中即可使其正常运行。或者您甚至可以通过编辑 mkspecs/qconfig.pri
:
来自动启用此功能
/usr/share/qt5/mkspecs/qconfig.pri
...
CONFIG += ... opencv
...
顺便说一句。 qconfig.pri
是 qt_config
的一部分,它由所有 QMake 的机器相关规范加载,因此它应该始终有效。但是,也可以仅修补特定规范(例如,/usr/share/qt5/mkspecs/linux-g++/qmake.conf
,或适合您的配置的任何内容)。当然,甚至可以将所有这些 INCLUDEPATH+=...
和 LIBS+=...
直接添加到 qmake.conf
中并完全删除 .prf 文件。
2) 另外,如果你不想污染Qt安装,你可以使用手动include:
opencv.pri
INCLUDEPATH += -I/usr/local/include/opencv
LIBS += -L/usr/local/lib -lopencv_stitching -lopencv_superres ...and another libraries
myprogram.pro
include(path/to/opencv.pri)
...
请假设我想要 link OpenCV 库 Qt-creator,一般来说,我将使用 [=12 添加 headers =] 和 link 库使用 LIBS
变量,它在 qmake 文件中使用,但是如果我们在大多数项目中使用 OpenCV,那么我们每次都必须包含 OpenCV 库,所以有什么办法在创建项目时自动添加 opencv 库。
我每次都使用以下命令为我的项目添加 OpenCV 库。
INCLUDEPATH += -I/usr/local/include/opencv
LIBS += -L/usr/local/lib -lopencv_stitching -lopencv_superres ...and etc.
更新
我将为 OpenCV4 使用以下 headers:
INCLUDEPATH += /usr/local/include/opencv4
当你安装opencv时你必须同时安装opencv.pc
文件,这个文件可以用来简化它,因为Qt支持package.config,如果是这样,它会替换它显示的内容以下:
unix: CONFIG += link_pkgconfig
unix: PKGCONFIG += opencv
实际上 Qt Creator 提供了一种简单的方法,您只需右键单击您的项目名称,然后 select 选择添加库:
然后你会看到一个对话框,你必须select图书馆的类型:
在这种情况下我使用了第四个选项,并输入了库的名称:opencv。
然后按下一步和完成按钮。
1) 您可以在 mkspecs/features
目录中创建一个 .prf(项目功能)文件:
/usr/share/qt5/mkspecs/features/opencv.prf
INCLUDEPATH += -I/usr/local/include/opencv
LIBS += -L/usr/local/lib -lopencv_stitching -lopencv_superres ...and another libraries
现在只需将 CONFIG += opencv
添加到您的 .pro 文件中即可使其正常运行。或者您甚至可以通过编辑 mkspecs/qconfig.pri
:
/usr/share/qt5/mkspecs/qconfig.pri
...
CONFIG += ... opencv
...
顺便说一句。 qconfig.pri
是 qt_config
的一部分,它由所有 QMake 的机器相关规范加载,因此它应该始终有效。但是,也可以仅修补特定规范(例如,/usr/share/qt5/mkspecs/linux-g++/qmake.conf
,或适合您的配置的任何内容)。当然,甚至可以将所有这些 INCLUDEPATH+=...
和 LIBS+=...
直接添加到 qmake.conf
中并完全删除 .prf 文件。
2) 另外,如果你不想污染Qt安装,你可以使用手动include:
opencv.pri
INCLUDEPATH += -I/usr/local/include/opencv
LIBS += -L/usr/local/lib -lopencv_stitching -lopencv_superres ...and another libraries
myprogram.pro
include(path/to/opencv.pri)
...