• Ubuntu 22.04 无法使用网易云音乐


    Ubuntu 22.04 无法使用网易云音乐

    不关心排查过程和故障原因的读者,请直接跳转到总结章节。

    无法使用的原因

    22版本ubuntu升级了很多库文件,导致netease的库无法使用。netease的库中,使用的是老版本的libselinux,老版本的libselinx需要老版本的libgio,但是,22版本的libgio是新的,所以,需要重新复制新版本的libselinx等库到netease的库中。

    排查该问题的方法

    命令行运行命令:

    ubuntu@ubuntu-Desktop:~$ netease-cloud-music 
    /opt/netease/netease-cloud-music/netease-cloud-music: /opt/netease/netease-cloud-music/libs/libselinux.so.1: no version information available (required by /lib/x86_64-linux-gnu/libgio-2.0.so.0)
    /opt/netease/netease-cloud-music/netease-cloud-music: symbol lookup error: /lib/x86_64-linux-gnu/libgio-2.0.so.0: undefined symbol: g_module_open_full
    
    • 1
    • 2
    • 3

    报错内容如下:
    /opt/netease/netease-cloud-music/netease-cloud-music: /opt/netease/netease-cloud-music/libs/libselinux.so.1: no version information available (required by /lib/x86_64-linux-gnu/libgio-2.0.so.0) /opt/netease/netease-cloud-music/netease-cloud-music: symbol lookup error: /lib/x86_64-linux-gnu/libgio-2.0.so.0: undefined symbol: g_module_open_full

    这里可以看到,netease库文件目录为opt/netease/netease-cloud-music/netease-cloud-music/libs,库中libselinx版本明显与系统的/lib/x86_64-linux-gnu/中的ibgio-2.0.so.0对不上,所以,将环境中的libselinx库复制到netease库中。
    执行命令:

    sudo cp /lib/x86_64-linux-gnu/libselinux.so.1 /opt/netease/netease-cloud-music/libs/
    
    • 1

    随后继续执行命令

    ubuntu@ubuntu-Desktop:~$ netease-cloud-music 
    /opt/netease/netease-cloud-music/netease-cloud-music: symbol lookup error: /lib/x86_64-linux-gnu/libgio-2.0.so.0: undefined symbol: g_module_open_full
    
    • 1
    • 2

    这里可以看到,报错undefined symbol: g_module_open_full
    执行命令:

    ubuntu@ubuntu-Desktop:~$ ldd -r /lib/x86_64-linux-gnu/libgio-2.0.so.0 | grep module
    	libgmodule-2.0.so.0 => /lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007f5a031c8000)
    
    • 1
    • 2

    可以看到,系统库的libgio是新版本的,而netease的库中的libgmodule是老版本,libgio依赖于libgmodule,所以出错了,将系统库中libgmodule复制到netease库中。
    执行命令:

    sudo cp /lib/x86_64-linux-gnu/libgmodule-2.0.so.0 /opt/netease/netease-cloud-music/libs/
    
    • 1

    同理,继续往下排查,后续的排查过程与上述一致,故省略了。

    总结

    执行以下命令可以解决该问题:

    sudo cp /lib/x86_64-linux-gnu/libselinux.so.1 /opt/netease/netease-cloud-music/libs/
    sudo cp /lib/x86_64-linux-gnu/libgmodule-2.0.so.0 /opt/netease/netease-cloud-music/libs/
    sudo cp /lib/x86_64-linux-gnu/libpango-1.0.so.0 /opt/netease/netease-cloud-music/libs/
    sudo cp /lib/x86_64-linux-gnu/libfribidi.so.0 /opt/netease/netease-cloud-music/libs/
    sudo apt-get install libcanberra-gtk-module
    
    • 1
    • 2
    • 3
    • 4
    • 5
  • 相关阅读:
    HAproxy+nginx搭建负载均衡集群
    基于基于全局差错能量函数的双目图像立体匹配算法matlab仿真,并提取图像的深度信息
    完美指南|如何使用 ODBC 进行无代理 Oracle 数据库监控?
    Raft协议-理论流程
    视频会议直播中实现Web实时互动白板功能|Demo分享
    Python实现卷积神经网络的Text-CNN文本分类
    Redis 持久化
    新手福利IDEA安装、配置及使用教程
    【GCN-RS】Learning Explicit User Interest Boundary for Recommendation (WWW‘22)
    R语言移除data.frame数据框中的NA值:使用na.omit移除包含任何NA值的行
  • 原文地址:https://blog.csdn.net/weixin_42152531/article/details/126620345