1、最近Ubuntu推出了最新的ubuntu17.04,爱尝鲜的楼主就选择了去安装,系统不错,感觉比旧版的更流畅,但安装软件的时候发现了一些问题,比如,我最爱的网易云音乐竟然缺少依赖:
正准备解包 netease-cloud-music_1.0.0_amd64_ubuntu16.04.deb ...
正在将 netease-cloud-music (1.0.0) 解包到 (1.0.0) 上 ...
dpkg: 依赖关系问题使得 netease-cloud-music 的配置工作不能继续:
netease-cloud-music 依赖于 libqt5x11extras5 (>= 5.1.0);然而:
未安装软件包 libqt5x11extras5。
netease-cloud-music 依赖于 gstreamer1.0-plugins-bad;然而:
未安装软件包 gstreamer1.0-plugins-bad。
netease-cloud-music 依赖于 gstreamer1.0-plugins-ugly;然而:
未安装软件包 gstreamer1.0-plugins-ugly。
netease-cloud-music 依赖于 libqt5libqgtk2;然而:
未安装软件包 libqt5libqgtk2。
2、然后我就一一安装这些依赖,直到安装到 libqt5libqgtk2,发现这个已经被取代了:
没有可用的软件包 libqt5libqgtk2,但是它被其它的软件包引用了。
这可能意味着这个缺失的软件包可能已被废弃,
或者只能在其他发布源中找到
然而下列软件包会取代它:
qt5-style-plugins:i386 qt5-style-plugins
3、也就是说系统已经用新的依赖取代了他,然后就没有必要使用它了,接下来要做的就是重新编译deb包,去掉这个无用的依赖
4、解决方案
1>修改依赖重新打包
# 先创建软件包目录
mkdir -p extract/DEBIAN
# 用dpkg解压
dpkg-deb -x neteasemusic.deb extract/
dpkg-deb -e neteasemusic.deb extract/DEBIAN
2>然后用文本编辑器打开extract/DEBIAN/control,找到Depends行,删除libqt5libqgtk2,删除libfontconfig1 (>= 2.11.94)中的(>= 2.11.94),然后重新打包:
# 建立软件包生成目录
mkdir build
# 重新打包
dpkg-deb -b extract/ build/
3>然后安装新打包的网易云即可
在build目录下会看到新生成的包。安装这个新的包即可。
sudo dpkg -i neteasemusic.deb
OK 大功告成!尽情欣赏音乐吧!