LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 555|回复: 3

升级到libpng15后,revdep-rebuild问题!

[复制链接]
发表于 2011-11-12 08:08:14 | 显示全部楼层 |阅读模式
不知道各位在升级libpng的过程中有没有遇到类似的问题:
升级libpng成功了:

  1. [i] media-libs/libpng
  2.      Available versions:  
  3.         (1.2)        1.2.46
  4.         (1.4)        ~1.4.8-r2
  5.         (0)        1.5.5 ~1.5.6
  6.         {apng static-libs}
  7.      Installed versions:  1.5.5(10时45分21秒 2011年11月11日)(apng -static-libs)
  8.      Homepage:            http://www.libpng.org/
  9.      Description:         Portable Network Graphics library
复制代码

提醒要做一下 revdep-rebuild --library '/usr/lib/libpng14.so.14‘这个操作。可是在这个过程中,一部分包以及通过了,我这边显示是45个包,过了37个。后面就开始报停止了,看了一下错误类型,发现公式报告链接错误,这些编译错误的包总是试图链接libpng14.如下:

  1. usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore         -O2 -march=i686 -pipe -c brasero-cli.c
  2.   CCLD   brasero
  3. /usr/lib/gcc/i686-pc-linux-gnu/4.4.5/../../../../i686-pc-linux-gnu/bin/ld: cannot find -lpng14
  4. collect2: ld returned 1 exit status
  5. make[2]: *** [brasero] 错误 1
  6. make[2]: 离开目录“/var/tmp/portage/app-cdr/brasero-2.32.1-r1/work/brasero-2.32.1/src”
  7. make[1]: *** [all-recursive] 错误 1
  8. make[1]: 离开目录“/var/tmp/portage/app-cdr/brasero-2.32.1-r1/work/brasero-2.32.1”
  9. make: *** [all] 错误 2
  10. * ERROR: app-cdr/brasero-2.32.1-r1 failed (compile phase):
  11. *   emake failed
复制代码

  1. cp Locations.xml.in Locations.xml
  2.   CCLD   libecalbackendweather.la
  3. /usr/lib/gcc/i686-pc-linux-gnu/4.4.5/../../../../i686-pc-linux-gnu/bin/ld: cannot find -lpng14
  4. collect2: ld returned 1 exit status
  5. make[4]: *** [libecalbackendweather.la] 错误 1
  6. make[4]: 离开目录“/var/tmp/portage/gnome-extra/evolution-data-server-2.32.3-r1/work/evolution-data-server-2.32.3/calendar/backends/weather”
  7. make[3]: *** [all-recursive] 错误 1
  8. make[3]: 离开目录“/var/tmp/portage/gnome-extra/evolution-data-server-2.32.3-r1/work/evolution-data-server-2.32.3/calendar/backends”
  9. make[2]: *** [all-recursive] 错误 1
  10. make[2]: 离开目录“/var/tmp/portage/gnome-extra/evolution-data-server-2.32.3-r1/work/evolution-data-server-2.32.3/calendar”
  11. make[1]: *** [all-recursive] 错误 1
  12. make[1]: 离开目录“/var/tmp/portage/gnome-extra/evolution-data-server-2.32.3-r1/work/evolution-data-server-2.32.3”
  13. make: *** [all] 错误 2
  14. * ERROR: gnome-extra/evolution-data-server-2.32.3-r1 failed (compile phase):
  15. *   emake failed
复制代码

等等,总是试图链接libpng14为啥呢?有哪位高手给予指点一下啊!先谢谢了。
发表于 2011-11-12 10:54:21 | 显示全部楼层
先别跑revdep-rebuild。把
  1. find /usr/lib -iname '*a' -print0 | xargs -0 grep -l 'lpng14' | xargs qfile -CSq | uniq | sort
复制代码
列出的包重emerge再说。

另外你应该读一下关于png15升级的新闻:
  1. eselect news read
复制代码
回复 支持 反对

使用道具 举报

发表于 2011-11-12 19:39:52 | 显示全部楼层
ls正解,或者:
find /usr/ -name '*.la' -exec grep png14 {} +
把列出来的文件(.la)一个一个修改,把所有libpng14 改成libpng15, 然后再次
revdep-rebuild --library libpng14.so.14 -- --keep-going
一般就ok了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-11-14 22:08:55 | 显示全部楼层
谢谢楼上两位,我后来看了news,问题解决了,谢谢两位。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表