alipay

环境

os browser


Archlinux firefox

情景

最近空间和域名都过期,花钱的时候到了。用了这么久linux还没上过支付宝, 一上问题就来了,居然要安装安全控件!幸好支付宝支持linux和主流的浏览器, 但是问题是我装上了,也提示成功了,还是没效果,于是google到了一篇文章, http://www.longda.us/?p=135 ,才把问题给解决了。 但是要翻墙才能看! 原因是Arch太新了,它已经使用了libpng15,而支付宝安全控件还在使用 libpng12,于是要创建一个符号链接:

ln -s /lib64/libpng15.so.15 /lib64/libpng12.so.0

这样,重新安装,重启浏览器就行了。

原理

但是作者是怎么知道少了这个东西的呢? 原来有一个工具叫ldd,man一下就知道它是可以查看依赖关系的,我通过

ldd .mozilla/plugins/libaliedit64.so

就看到了一堆库文件的依赖,其中有一项:

libpng12.so.0 not found

说明没有找到这个库文件,于是可以想到可能是版本的问题,便去find一下 libpng在当前系统中的版本,发现是15,应该是名字的问题,便建一个 符号链接,把问题解决了。

总结

如果是像我一样的Archlinux用户,每天保持最新,则要小心,以后可能 会经常遇到这种库文件版本的问题,记住解决办法的途径是最好的,以后遇到 类似的问题就知道怎么解决了。