红联Linux门户
Linux帮助

Ubuntu编译OpenCV出现No rule to make target '/usr/lib/libpng.

发布时间:2016-03-03 11:23:14来源:linux网站作者:RichardZJU

【环境&版本】

Ubuntu 12.04

OpenCV 2.4.11


【问题描述】

$cmake .

$sudo make

编译到23%的时候,出现错误“Too many levels of symbolic links”,对象是libpng.so


【问题解决】

网上搜了一下,所有的答案都是说软连接出了问题,需要用绝对路径重新建立软连接,我用 ls 查看 /usr/lib/libpng.so,果然也是提示同样的“Too many levels of symbolic links”错误

$locate libpng.so // 首先定位一下源文件在什么地方

打印出如下两个:

/usr/lib/libpng.so
/usr/lib/i386-linux-gnu/libpng.so

所以第二个应该就是源文件了

$sudo mv /usr/lib/libpng.so /usr/lib/libpng_bk.so   // 先做一下备份

$sudo ln -s /usr/lib/i386-linux-gnu/libpng.so /usr/lib/      // 重新建立一个软连接

然后再次用 ls 查看/usr/lib/libpng.so,发现已经不提示错误了,结果呈现蓝绿色,用ls -l命令会显示软连接信息/usr/lib/libpng.so -> /usr/lib/i386-linux-gnu/libpng.so

回到opencv-2.4.11解压目录,

$make clean

$sudo make

$sudo make install

成功。


本文永久更新地址:http://www.linuxdiyf.com/linux/18579.html