2015年3月10日 星期二

解決「VLC 更新,因關聯模組 libgpg-error.so 版本不合而失敗」問題

VLC 是 VideoLAN 社群所開發的多媒體播放程式(:要先加裝「RPM Fusion 套件資料庫」),因其所使用的相關套件之故,在較老舊電腦的效能表現也相當不凡。若是電腦需要使用「MATE 桌面」環境,那麼用 VLC 播放多媒體是不錯的選擇。
  最近的更新中,VideoLAB 社群釋出的 VLC 2.2 正式版,也出現在「RPM Fusion 套件資料庫」的更新列表中。但是,更新時卻出現這樣的錯誤訊息
[root@Celeron-D ~]# yum update vlc
Loaded plugins: langpacks
Resolving Dependencies
--> Running transaction check
---> Package vlc.x86_64 0:2.2.0-0.2.fc21 will be updated
---> Package vlc.x86_64 0:2.2.0-1.fc21 will be an update
--> Processing Dependency: vlc-core(x86-64) = 2.2.0-1.fc21 for package: vlc-2.2.0-1.fc21.x86_64
--> Running transaction check
---> Package vlc-core.x86_64 0:2.2.0-0.2.fc21 will be updated
---> Package vlc-core.x86_64 0:2.2.0-1.fc21 will be an update
--> Processing Dependency: libgpg-error.so.0(GPG_ERROR_1.0)(64bit) for package: vlc-core-2.2.0-1.fc21.x86_64
--> Finished Dependency Resolution
Error: Package: vlc-core-2.2.0-1.fc21.x86_64 (rpmfusion-free-updates)
           Requires: libgpg-error.so.0(GPG_ERROR_1.0)(64bit)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest
意思是說 libgpg-error.so.0 這個關聯模組不存在,但是用 YUM 查詢
[root@Celeron-D ~]# yum provides libgpg-error.so*
Loaded plugins: langpacks
 . . . . .
libgpg-error-1.13-3.fc21.x86_64 : Library for error values used by GnuPG components
Repo        : fedora
Matched from:
Provides    : libgpg-error.so.0()(64bit)

libgpg-error-1.13-3.fc21.x86_64 : Library for error values used by GnuPG components
Repo        : @koji-override-0/$releasever
Matched from:
Provides    : libgpg-error.so.0()(64bit)
又發現這個模組所存在的套件 libgpg-error 已經安裝了,只是似乎並不是來自原有 Fedora 套件資料庫。所以應該是 Fedora 21 釋出時,因某些原因而使用尚未完整測試的版本,但是新的版本也尚未測試完成。
  既然沒有已測試好的版本可用,而 VLC 又需要新的 libgpg-error.so.0 模組,只好由「更新測試中的套件資料庫」先安裝『測試版』,再更新 VLC。
[root@Celeron-D ~]# yum update libgpg-error --enablerepo=updates-testing
 . . . . .
[root@Celeron-D ~]# yum update vlc
由上例的操作步驟,終於可以成功更新 VLC 了。
  若是現在是首次安裝 VLC,因「RPM Fusion 套件資料庫」中的 VLC 已是新版,所以要先安裝 libgpg-error 套件,才可以安裝 VLC。
[root@Celeron-D ~]# yum install libgpg-error --enablerepo=updates-testing
[root@Celeron-D ~]# yum install vlc

心得分享:

由「更新測試中的套件資料庫」先安裝或更新成『測試版』,似乎是一個解決版本衝突的暫時性做法,以後測試套件時可以善加利用。

已測試版本:

  • Fedora: 21

參考資料:

沒有留言:

張貼留言

感謝你耐心看完本文,歡迎留下任何指正、建議,筆者會儘快回應。(English is also welcome.)