Tutulan kırık paketler nasıl düzeltilir?


21

Ubuntu'ya libssl-dev yüklemeye çalışılıyor 14.04.2

$ make
fatal error: openssl/sha.h: No such file or directory
compilation terminated.

$ sudo apt-get install libssl-dev
The following packages have unmet dependencies:
 libssl-dev : Depends: zlib1g-dev but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

$ sudo apt-get install zlib1g-dev
The following packages have unmet dependencies:
 zlib1g-dev : Depends: zlib1g (= 1:1.2.3.4.dfsg-3ubuntu4) but 1:1.2.8.dfsg-1ubuntu1 is to be installed
E: Unable to correct problems, you have held broken packages.

Bekletilen paketi nasıl kaldırabilir ve doğru şekilde nasıl yükleyebilirim?


En son ne zaman kaçtınız sudo apt updateve / veya sudo apt upgrade?
DopeGhoti

Merhaba, her adım arasında ikisini de yaptım.
Sam Healey

Yanıtlar:


18

İlk olarak, şunu girmeyi deneyin: sudo dpkg --configure -a

Bu, kırık bağımlılıkları düzeltmek için uzun bir yol kat edecektir. Bu yeterli değilse, deneyin: sudo apt-get install -f

Ardından temizleyin ve güncelleyin: sudo apt-get clean && sudo apt-get update

Sonra yükseltme: sudo apt-get upgrade ( yükseltmelere 'y' deyin)

Bazı paketlerin "geri tutulduğunu" belirten bir mesaj alırsanız, bunu yapın:

sudo apt-get dist-upgrade

Şimdi şu iki komutu yapın:

sudo apt-get purge zlib1g-dev
sudo apt-get autoremove

Ardından, girdiğinizde neler olduğunu görün: sudo apt-get install libssl-dev

Hala çalışmıyorsa, şunu deneyin:

sudo aptitude install libssl-dev zliblg-dev=1:1.2.8.dfsg-1ubuntu1

Hala çalışmıyorsa, Synaptic Package Manager'ı açın (Başlatıcı'da olmalıdır. Bulamazsanız, Terminal'e girin synaptic-pkexec).

İçin ara zlib1g-dev. Zlib1g-dev'in yanındaki kutu yeşil değilse üzerine tıklayın ve "Kurulum için işaretle" yi seçin. Birden fazla sürüm görüyorsanız, seçimini yapın 1:1.2.8.dfsg-1ubuntu1. Sonra arayın libssl-dev. Libssl-dev'in yanındaki kutu yeşil değilse üzerine tıklayın ve "Kurulum için işaretle" yi seçin.

Ardından "Uygula" yı seçin.


Merhaba, cevap verdiğiniz için teşekkür ederim. Yukarıdaki her şeyi yaptım ve orijinal gönderimle aynı hatayı aldım. Yükseltmeyi çalıştırdığımda aşağıdaki mesajı aldım. Aşağıdaki paketler geri tutulmuştur: linux-generic-lts-ütopik linux-başlıkları-generic-lts-ütopik linux-resim-jenerik-lts-ütopik 0 yükseltildi, 0 yeni yüklendi, kaldırılacak 0 ve yükseltilmedi.
Sam Healey

ne verir apt-cache policy zlib1g-devvegrep -P '^[ \t]*[^#[ \t]+' /etc/apt/sources.list /etc/apt/sources.list.d/*.list

@Bahamut "-P" demek istediğinizden emin misiniz? Benim için alıyorumE: Command line option 'P' [from -P] is not known.
gracious1

@SamHealey Cevabımı biraz değiştirdim. Orada önerdiğimi deneyin ve nasıl gittiğini bize bildirin.
gracious1

1
@Bahamut Neden grafik programla sudo yok?
gracious1

2

Paketinizle ilgili tüm dosyaları aramalı ve temizlemeli, sonra yeniden yüklemelisiniz.

sudo dpkg --list
sudo apt-get purge "file-name"

ikinci komutu her dosyada tekrarlayın ve ardından yeniden yükleyin.


0
sudo aptitude install lib_name_depending

libcurl4-openssl-devUbuntu 14.04LTS'ye kurmak istediğimde benim için çalıştı.

Makineme birkaç bağlı kütük takılmadı ve yetenek aracı kullanarak, kurabilmek için gerekli kütüphaneleri / paketleri etkileşimli olarak kurmayı / düşürmeyi başardım libcurl4-openssl-dev.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.