.deb paketi bağımlılık sorunu

Başlatan ahmetburakkaplan, 20 Temmuz 2014 - 19:40:55

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

ahmetburakkaplan

Merhaba Arkadaşlar;

Staj yaptığım şirketin şartı gereği Ubuntu Bilgisayarda internet bağlantısı yok. Ancak belli başlı programları projem için kurmam gerekiyor.
Bunun için ihtiyacım olan programların .deb paketlerini indirip bir disk yardımıyla Ubuntu makineme aktardım.

sudo dpkg  -i   paketadi.deb komutunu kullandım bunun için. Ancak paketin bağımlılıkları varmış sanırım. Ubuntu'da yeni olduğum için sanırım diyorum.

Acaba indirdiğim .deb paketimi arızalı diye başka bir program kurmayı deneyeyim dedim. vlc programını yüklemeye çalıştım. Ubuntu'da acemi olduğum için uç birimdeki uyarıları aşağıya kopyalıyorum.

ahmetburak@ahmetburak-Ideapad-Z570:~/Masaüstü$ sudo dpkg -i vlc_2.1.4-*ubuntu14.04.1_amd64.deb
[sudo] password for ahmetburak:
Önceden seçili olmayan vlc paketi seçiliyor.
(Veritabanı okunuyor... mevcut 204562 dosya veya klasör yüklü.)
Açılmaya hazırlanan vlc_2.1.4-0ubuntu14.04.1_amd64.deb ...
vlc (2.1.4-0ubuntu14.04.1) paketi açılıyor ...
dpkg: bağımlılık sorunları vlc yapılandırmasını önlüyor:
vlc depends on vlc-nox (= 2.1.4-0ubuntu14.04.1); bununla beraber:
  vlc-nox paketi yüklenmedi.
vlc depends on libsdl-image1.2 (>= 1.2.10); bununla beraber:
  libsdl-image1.2 paketi yüklenmedi.
vlc depends on libsdl1.2debian (>= 1.2.11); bununla beraber:
  libsdl1.2debian paketi yüklenmedi.
vlc depends on libtar0; bununla beraber:
  libtar0 paketi yüklenmedi.
vlc depends on libva-x11-1 (>> 1.3.0~); bununla beraber:
  libva-x11-1 paketi yüklenmedi.
vlc depends on libvlccore7 (>= 2.1.0); bununla beraber:
  libvlccore7 paketi yüklenmedi.
vlc depends on libxcb-composite0; bununla beraber:
  libxcb-composite0 paketi yüklenmedi.
vlc depends on libxcb-keysyms1 (>= 0.3.9); bununla beraber:
  libxcb-keysyms1 paketi yüklenmedi.
vlc depends on libxcb-xv0 (>= 1.2); bununla beraber:
  libxcb-xv0 paketi yüklenmedi.

dpkg: error processing package vlc (--install):
bağımlılık sorunları - yapılandırılmadan bırakılıyor
gnome-menus (3.10.1-0ubuntu2) için tetikleyiciler işleniyor ...
desktop-file-utils (0.22-1ubuntu1) için tetikleyiciler işleniyor ...
bamfdaemon (0.5.1+14.04.20140409-0ubuntu1) için tetikleyiciler işleniyor ...
Rebuilding /usr/share/applications/bamf-2.index...
mime-support (3.54ubuntu1) için tetikleyiciler işleniyor ...
man-db (2.6.7.1-1) için tetikleyiciler işleniyor ...
İşlem sırasında hatalar bulundu:
vlc


Arkadaşlar zaman ayırıp yardım edebilirseniz çok memnun olurum. Herkese iyi çalışmalar dilerim.

7hr33l3t73r

#1
Internet baglantisi olmadan paket kurmak icin gerekli bagimliliklari saglamak kismi dogrdur.
Verdiginiz ciktilarda da zaten gerekli bagimliliklarin adini size gosteriyor.Oncelikle bagimliliklari saglamaniz gerekiyor.
Ubuntu; paketlerini dvd olarak sunuyordu yanlis hatirlamiyorsam ama internetinizin hizli olmasinda yarar var,  cunku  boyutlari yuksek.
dc -e '[q]sa[ln0=aln256%Pln256/snlbx]sb207356256404211981204295703670388snlbxq'
https://www.getgnu.org/gnulinux/gnulinux-ipuclari/nasil-akillica-soru-sorulur.html

heartsmagic

VLC sadece örnek, oradan da durumu anlamışsındır. @l0n3w0lf'un da söylediği üzere bağımlılık kısmını doğru anlamışsın. Kurmak istediğin uygulamanın bağımlılıkları ve hatta o bağımlılıkların da varsa başka bağımlılıkları hepsini sağlaman gerekmekte. Bu, paketleme ve depo mantığını kullanan Linux dağıtımlarının en büyük artılarından biridir. Bağımlılıklar paketlerden ayrılır, aynı bağımlılık defalarca kurulmaz sisteme. Bir kere kurulursa ona bağımlı diğer uygulamaların kendisinin kurulması yeterli olur.

Fakat, internet erişimi olmayan durumlarda bu artı ne yazık ki eksiye dönüşebiliyor gördüğün üzere. Bu işlemi kolaylaştıran uygulamalar vardı esasında fakat ara ara ortaya çıkıp kayboluyorlar sanırım. Ancak, eğer başka bir yerde kurulu aynı sürüm Ubuntu var diyorsan sana şöyle bir yöntem önereyim:

Önce Synaptic kur sisteme. Sonra kurmak istediğin uygulamayı aratıp bul ve kurulum için işaretle. Synaptic bağımlılıkları da işareteyecektir. Daha sonra uygulama seçilyken "Dosya-Paket indirme betiği oluştur" yolunu kullan ve bir dosya ismi ver. Synaptic bu dosyaya indirilmesi gereken paketleri wget ile beraber işleyecektir. Synaptic yetkili kipte çalıştırıldığı için root'a ait bir yerlere kaydeder dosyayı. Örneğin root'un ev dizin olan /root'a. O dosya esasında bir betiktir, çalıştırınca wget ile hem uygulamayı hem de bağımlılıkları indirir. Diyelim ki ismi /root/paket_ismi oldu. Önce onu kendi ev dizinine kopyala:

cd ~
sudo cp /root/paket_ismi .


Not: Yukarıdaki komutun sonunda boşluklar beraber bir "nokta" var.

Daha sonra çalıştır:
./paket_ismi

Böylece betiği çalıştırdığın dizine yani kendi kullanıcının ev dizinine paket ve bağımlılıkları inecektir. Sen de bunları iş yerine taşırsın. Bu yöntemin şöyle bir dikkat gerektiren yönü var. Eğer evdeki Ubuntu'da iş yerindeki sistemden farklı olarak bu paketin ihtiyacı olan bağımlılıklardan biri veya daha fazlası kuruluysa Synaptic bunu es geçecektir. Haliyle iş yerinde yine eksik bağımlılık hatası alırsın. Artık o konuyu senin incelemen gerekiyor.

Tabi, eve veya başka bir yerde Ubuntu yoksa ve elle indiriyorsan .deb paketlerini yapacak bir şeyin yok, tek tek indireceksin bağımlılıkları.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.