【发布时间】:2018-08-26 19:25:56
【问题描述】:
尝试构建基于 OpenCV 的应用程序时,我看到两行警告我缺少 libjpeg 和 libpng 的库。这是控制台输出的摘录,然后继续处理许多类似的 Qt 相关问题。
/usr/bin/ld: warning: libjpeg.so.9, needed by /usr/local/lib/libopencv_imgcodecs.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libpng16.so.16, needed by /usr/local/lib/libopencv_imgcodecs.so, not found (try using -rpath or -rpath-link)
/usr/local/lib/libopencv_highgui.so: undefined reference to `QGraphicsView::viewportEvent(QEvent*)@Qt_5'
/usr/local/lib/libopencv_highgui.so: undefined reference to `QAbstractSlider::value() const@Qt_5'
研究了一下,我发现了如何使用ldconfig -p | grep libjpeg 和ldconfig -p | grep libpng 显示我在我的系统上安装了哪些库和版本。他们给了我以下信息:
libjpeg.so.8 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libjpeg.so.8
libjpeg.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libjpeg.so
libpng12.so.0 (libc6,x86-64) => /lib/x86_64-linux-gnu/libpng12.so.0
和
libpng12.so.0 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libpng12.so.0
libpng12.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libpng12.so
我清楚地看到我有问题。我计算机上安装的库比 OpenCV 所需的库要旧。但是,我尝试了sudo apt install libjpeg-dev 和sudo apt update,但我还没有找到可用的更新版本。
【问题讨论】:
标签: opencv ubuntu-16.04 libpng libjpeg