2009-08-05 92 views
3

我在Fedora 8/9 64位(http://mediainfo.sourceforge.net/es/Download/Fedora)上安裝最新版本的MediainfoDLL。 我下載了libmediainfo-0.7.20和libzen0-0.4.3文件。如果我已經安裝了GLIBCXX_4.1.2,需要GLIBCXX_3.4.9嗎?

當我試圖安裝libzen0我得到這樣的輸出:

# rpm -i libzen0-0.4.3-1.x86_64.Fedora_9.rpm 
warning: libzen0-0.4.3-1.x86_64.Fedora_9.rpm: Header V3 DSA signature: NOKEY, key ID dfb2ef23 
error: Failed dependencies: 
     libstdc++.so.6(GLIBCXX_3.4.9)(64bit) is needed by libzen0-0.4.3-3.1.x86_64 

但問題是,我已經安裝了4.1.2版本的libstdC++:

# yum list libstdc++ 
Loaded plugins: fastestmirror 
Loading mirror speeds from cached hostfile 
* updates-newkey: kdeforge.unl.edu 
* fedora: kdeforge.unl.edu 
* updates: kdeforge.unl.edu 
Installed Packages 
libstdc++.i386                4.1.2-33                installed 
libstdc++.x86_64                4.1.2-33                installed 

哪有我解決這個問題?

編輯:

# rpm -q --provides libstdc++ 
libstdc++.so.6()(64bit) 
libstdc++.so.6(CXXABI_1.3)(64bit) 
libstdc++.so.6(CXXABI_1.3.1)(64bit) 
libstdc++.so.6(GLIBCXX_3.4)(64bit) 
libstdc++.so.6(GLIBCXX_3.4.1)(64bit) 
libstdc++.so.6(GLIBCXX_3.4.2)(64bit) 
libstdc++.so.6(GLIBCXX_3.4.3)(64bit) 
libstdc++.so.6(GLIBCXX_3.4.4)(64bit) 
libstdc++.so.6(GLIBCXX_3.4.5)(64bit) 
libstdc++.so.6(GLIBCXX_3.4.6)(64bit) 
libstdc++.so.6(GLIBCXX_3.4.7)(64bit) 
libstdc++.so.6(GLIBCXX_3.4.8)(64bit) 
libstdc++ = 4.1.2-33 
libstdc++.so.6 
libstdc++.so.6(CXXABI_1.3) 
libstdc++.so.6(CXXABI_1.3.1) 
libstdc++.so.6(GLIBCXX_3.4) 
libstdc++.so.6(GLIBCXX_3.4.1) 
libstdc++.so.6(GLIBCXX_3.4.2) 
libstdc++.so.6(GLIBCXX_3.4.3) 
libstdc++.so.6(GLIBCXX_3.4.4) 
libstdc++.so.6(GLIBCXX_3.4.5) 
libstdc++.so.6(GLIBCXX_3.4.6) 
libstdc++.so.6(GLIBCXX_3.4.7) 
libstdc++.so.6(GLIBCXX_3.4.8) 
libstdc++ = 4.1.2-33 

回答

3

有趣的是我看到rpm -q --provides libstdc++的輸出實際上是相同的。我懷疑你使用的RPM是針對libstdC++的一個版本進行編譯的,該版本實際上並沒有在你的操作系統上運行。

您是否正在爲您的操作系統安裝正確版本的libzen0?如果是這樣;嘗試爲類似的操作系統安裝RPM - 例如用於RHEL 5.3的libzen0?

+0

感謝它的工作。我爲RHEL 4安裝了libzen0 :) – inakiabt 2009-08-05 22:03:54

1

雖然我與它看起來像使用rpm的問題64位系統上沒有任何經驗:我的系統(Fedora的8)我得到以下幾點:

$ rpm -q --provides libstdc++ 
libstdc++.so.6 
libstdc++.so.6(CXXABI_1.3) 
libstdc++.so.6(CXXABI_1.3.1) 
libstdc++.so.6(GLIBCXX_3.4) 
libstdc++.so.6(GLIBCXX_3.4.1) 
libstdc++.so.6(GLIBCXX_3.4.2) 
libstdc++.so.6(GLIBCXX_3.4.3) 
libstdc++.so.6(GLIBCXX_3.4.4) 
libstdc++.so.6(GLIBCXX_3.4.5) 
libstdc++.so.6(GLIBCXX_3.4.6) 
libstdc++.so.6(GLIBCXX_3.4.7) 
libstdc++.so.6(GLIBCXX_3.4.8) 
libstdc++ = 4.1.2-33 

所以如果你的libstdC++不提供像我這樣的GLIBCXX_3.4.9,我會認爲rpm損壞了。一種解決方案是創建一個需要libstdC++的假轉速,並提供GLIBCXX_3.4.9,但正確的解決方案是修復rpm本身。

+0

這是完全一樣的情況,所以,我怎樣才能創建一個「假轉速」? – inakiabt 2009-08-05 21:07:19

相關問題