
我運行的是 ubunut 12.04。
今天,一個軟體更新程式告訴我要安裝一些 libqt4 軟體包,我照做了。我遇到了以下問題,我認為其他人今天可能會遇到這個問題。
嘗試安裝來自更新管理器的新軟體包 libqt4-dbus 4:4.8.1-0ubuntu4.4 。但由於依賴關係,它會給出錯誤。
這是分解的確切錯誤
libqt4-dbus : Depends: libqt4-xml (= 4:4.8.1-0ubuntu4.3) but 4:4.8.1-0ubuntu4.4 is installed
Depends: libqtcore4 (= 4:4.8.1-0ubuntu4.3) but 4:4.8.1-0ubuntu4.4 is installed
Recommends: qdbus (= 4:4.8.1-0ubuntu4.3)
從查看ubuntu網站http://packages.ubuntu.com/precise/libqt4-dbus
libqt4-dbus 4:4.8.1-0ubuntu4.4 依賴 4:4.8.1-0ubuntu4.4 軟體,而不依賴 4:4.8.1-0ubuntu4.3 軟體。
為什麼安裝程式說它依賴較低版本?我還認為 4:4.8.1-0ubuntu4.4 會與 4:4.8.1-0ubuntu4.3 相容,因為它會向後相容
謝謝回覆。如果它試圖說出你所說的話,那麼這個輸出會令人困惑。我認為他們應該從中刪除“但是”這個詞。這就是讓我認為它正在尋找舊版本的原因。
我檢查了軟體包,它們都是最新的軟體。
ii libqt4-xml 4:4.8.1-0ubuntu4.4 Qt 4 XML module
如果它試圖說出你所說的話,那麼這個輸出會令人困惑。我認為他們應該從中刪除“但是”這個詞。這就是讓我認為它正在尋找舊版本的原因。
我檢查了軟體包,它們是最新的軟體。
ii libqt4-xml 4:4.8.1-0ubuntu4.4 Qt 4 XML module
ii libqt4-xml:i386 4:4.8.1-0ubuntu4.4 Qt 4 XML module
ii libqtcore4 4:4.8.1-0ubuntu4.4 Qt 4 core module
ii libqtcore4:i386 4:4.8.1-0ubuntu4.4
ii libqt4-xml:i386 4:4.8.1-0ubuntu4.4 Qt 4 XML module
ii libqtcore4 4:4.8.1-0ubuntu4.4 Qt 4 core module
ii libqtcore4:i386 4:4.8.1-0ubuntu4.4
因此,在上面的 libqt4-xml 句子中,正確的說法是安裝了 4:4.8.1-0ubuntu4.4 版本。不知道為什麼安裝最新版本時會說舊版可用。
libqt4-dbus : Depends: libqt4-xml (= 4:4.8.1-0ubuntu4.3) but 4:4.8.1-0ubuntu4.4 is installed
答案1
今天解決了這個問題。我必須安裝 libqt4-dbus:amd64 軟體包才能更新正常的 libqt4-dbus 軟體包。當我嘗試強制安裝 libqt4-dbus:i386 軟體包時發現了這一點。
emarnau@eld1256hzj-l7:~/Downloads$ sudo dpkg -i libqt4-dbus_4.8.1-0ubuntu4.4_i386.deb (正在讀取資料庫...目前安裝的219816 個檔案和目錄。)準備替換libqt4-dbus:386-dbus:i386。 4:4.8 .1-0ubuntu4.4(使用libqt4-dbus_4.8.1-0ubuntu4.4_i386.deb)...解壓縮取代libqt4-dbus:i386 ... dpkg:處理libqt4-dbus:i386時發生錯誤(--install ):libqt4- dbus:i386 4:4.8.1-0ubuntu4.4 無法配置,因為 libqt4-dbus:amd64 處於不同版本 (4:4.8.1-0ubuntu4.3)
emarnau@eld1256hzj-l7:~/Downloads$ sudo dpkg -i libqt4-dbus_4.8.1-0ubuntu4.4_amd64.deb (正在讀取資料庫...目前安裝的219816 個檔案和目錄。)準備替換libqt4-dbus 4:dbus 4 4.8.1 -0ubuntu4.3 (使用libqt4-dbus_4.8.1-0ubuntu4.4_amd64.deb) ... 解壓縮取代libqt4-dbus ... 設定libqt4-dbus (4:4.8.1-0ubuntu4.4) ...處理觸發器對於 libc-bin ...ldconfig 延遲處理正在進行
ii libqt4-dbus 4:4.8.1-0ubuntu4.4 Qt 4 D-Bus module
ii libqt4-dbus:i386 4:4.8.1-0ubuntu4.4 Qt 4 D-Bus module
奇怪的是,apt 無法弄清楚這一點。也許是因為 i386 軟體包總是在 amd 64 軟體包之前安裝。如果是相反的話,它就會修復它。
答案2
更新程式並沒有說它需要舊版本。它說只有舊版本可用,這取決於新版本。4:4.8.1-0ubuntu4.4
比 更新4:4.8.1-0ubuntu4.3
。
您很可能使用的鏡像與存檔稍微不同步,並且僅同步了一些套件。如果您等待一段時間並稍後重試,它應該會起作用。或者你可以換一個不同的鏡子。