【问题标题】:Qt Creator cannot find openCV librariesQt Creator 找不到 openCV 库
【发布时间】:2016-02-11 09:25:27
【问题描述】:

首先我知道有人问过这个问题(see here),但这些解决方案对我不起作用。

我正在尝试在 ubuntu 14.04 上安装 opencv 以与 Qt Creator 一起使用。

我完全按照this 教程进行操作,并通过运行 facedetect 示例确认它有效。

然后我开始学习this 教程,了解如何将 Qt creator 与 opencv 结合使用。我完全按照视频中的步骤进行操作,但是当我构建并运行示例时,出现以下错误:

   /usr/bin/ld: cannot find -lopencv_core
   /usr/bin/ld: cannot find -lopencv_imgcodecs
   /usr/bin/ld: cannot find -lopencv_highgui

完整编译输出:

g++ -Wl,-rpath,/home/tpst/Program_Files/Qt-5.3.1/5.3/gcc_64 -Wl,-rpath,/home/tpst/Program_Files/Qt-5.3.1/5.3/gcc_64/lib -o test main.o   -L/usr/local/lib -lopencv_core -lopencv_imgcodecs -lopencv_highgui -L/home/tpst/Program_Files/Qt-5.3.1/5.3/gcc_64/lib -lQt5Core -lpthread 
/usr/bin/ld: cannot find -lopencv_core
/usr/bin/ld: cannot find -lopencv_imgcodecs
/usr/bin/ld: cannot find -lopencv_highgui
collect2: error: ld returned 1 exit status
make: *** [test] Error 1
23:02:50: The process "/usr/bin/make" exited with code 2.
Error while building/deploying project test (kit: Desktop Qt 5.3 GCC 64bit)
When executing step 'Make'

这是我的 .pro 文件的内容:

QT       += core

QT       -= gui

TARGET = test
CONFIG   += console
CONFIG   -= app_bundle

TEMPLATE = app

INCLUDEPATH += /usr/local/include/opencv
LIBS += -L/usr/local/lib -lopencv_core -lopencv_imgcodecs -lopencv_highgui

SOURCES += main.cpp

我也尝试过使用终端编译并得到相同的结果(/usr/bin/ld: 找不到 -llib)

我不明白为什么 Qt 找不到这些库。可以看到它们存在于目录

我们将不胜感激。我是 linux 和 Qt 的新手,我不太了解针对类似问题发布的解决方案,我自己也无法解决这个问题。

【问题讨论】:

  • 您能否尝试重命名或创建指向您的库的链接,以便将它们命名为:libopencv_calib3d.so 等,而不使用 .3.0

标签: c++ linux qt opencv ubuntu


【解决方案1】:

afaik 你的链接库必须看起来像 libName.so 但你的库被命名为 libName.so.version 所以链接器找不到它们。尝试创建符号链接:

ln /usr/local/lib/libopencv_core.so.3.0.0 /usr/local/lib/libopencv_core.so
ln /usr/local/lib/libopencv_imgcodecs.so.3.0.0 /usr/local/lib/libopencv_imgcodecs.so
ln /usr/local/lib/libopencv_highgui.so.3.0.0 /usr/local/lib/libopencv_highgui.so

【讨论】:

  • 谢谢,这解决了我的问题。你知道为什么这会发生在我的系统上,而不是我所关注的指南上吗?
  • 也许这些符号链接已经存在于某个不同的位置?你自己编译opencv吗?你也运行了安装程序吗?但是,您可以以某种方式将完整的文件名添加到链接器中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-05-26
  • 1970-01-01
  • 2011-01-14
  • 2021-09-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多