【问题标题】:How to update from libjpeg.so.8 to libjpeg.so.9 in Ubuntu 16.04?如何在 Ubuntu 16.04 中从 libjpeg.so.8 更新到 libjpeg.so.9?
【发布时间】:2018-08-26 19:25:56
【问题描述】:

尝试构建基于 OpenCV 的应用程序时,我看到两行警告我缺少 libjpeglibpng 的库。这是控制台输出的摘录,然后继续处理许多类似的 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 libjpegldconfig -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-devsudo apt update,但我还没有找到可用的更新版本。

【问题讨论】:

    标签: opencv ubuntu-16.04 libpng libjpeg


    【解决方案1】:

    这是在 Ubuntu 16.04 上安装 libjpeg9 的方法:

    sudo apt install libjpeg9-dev
    

    【讨论】:

      【解决方案2】:

      用于安装 libjpeg9 Ubuntu 16.04

      $ sudo apt-get install libjpeg9-dev
      

      【讨论】:

      • 这个答案与我几个月前发布的答案之间的唯一区别是您以过时的方式使用apt。这个答案究竟丰富了哪些方面?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-10-18
      • 1970-01-01
      • 2017-07-09
      • 2015-08-22
      • 1970-01-01
      • 2017-05-02
      • 2022-08-11
      相关资源
      最近更新 更多