UbuntuKylin反编译麒麟看图解决安装依赖问题并顺利运行
本文是《技术相关(共44篇)》目录的第 44 篇。阅读本文前,建议先阅读本文前3篇文章:
安装UK25.04的时候选择的是最小化安装,因为我不喜欢太多的东西,这也导致了一个问题,查看图片竟然没有一个图片查看软件。官网的麒麟看图已经移除了,找了个镜像下载发现软件已经是4年前的了。安装后提示如下错误:
大致是缺少依赖libopencv-core4.5d,版本应大于等于4.5.4+dfsg,但是实际上我已经安装了更高版本的4.10.0,没办法,只有反编译修改依赖了。
我下载的麒麟看图文件名是kylin-photo-viewer_1.2.0-13_amd64.deb,保存在“下载”目录中。
在下载目录中右键打开终端,依次输入以下命令:
dpkg-deb -x kylin-photo-viewer_1.2.0-13_amd64.deb extract/
dpkg-deb -e kylin-photo-viewer_1.2.0-13_amd64.deb extract/DEBIAN
在extract/DEBIAN目录下会解包出一个名为control的文件,文本编辑器打开如下:
如蓝色区域所示,把4.5d替换成410,4.5.4+dfsg替换成4.10.0+dfsg-5,保存。输入以下代码重新打包
dpkg-deb -b extract/
会在“下载”目录下重新打包成extract.deb,本来以为可以安装了,但提示缺少依赖libukui-log4qt1 (>= 1.0.3),我查找了一下目前我的系统安装的是1.0.1版本,想着找一个1.0.3高版本安装一下,但bing了半天,发现这个文件能查到的最高版本是1.0.1,不知道它这个1.0.3是怎么来的。继续修改上图蓝色部分下面,最后一行libukui-log4qt1 (>= 1.0.3)把版本号替换成1.0.1,重新打包。
顺利解决了依赖并顺利安装,菜单中也出现了图标,但不能打开程序,在终端执行命令kylin-photo-viewer提示错误,程序需要的共享库文件libopencv_core.so.4.5d不存在。因为我系统自带的是更高版本的410文件,所以需要进行软链接,先找到我的410共享库文件的位置:
确定了是在/usr/lib/x86_64-linux-gnu,使用“ldd /usr/bin/kylin-photo-viewer”最后发现一共需要软链接3个文件,代码如下:
sudo ln -s /usr/lib/x86_64-linux-gnu/libopencv_core.so.410 /usr/lib/x86_64-linux-gnu/libopencv_core.so.4.5d
sudo ln -s /usr/lib/x86_64-linux-gnu/libopencv_imgcodecs.so.410 /usr/lib/x86_64-linux-gnu/libopencv_imgcodecs.so.4.5d
sudo ln -s /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.410 /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.4.5d
sudo ldconfig
最后用sudo ldconfig更新下共享库,看图软件终于能顺利打开了。
obaby
技术不错啊,奈斯
似水流年
让我想起了前几年反编译网易云音乐解决安装依赖的日子。😸