1. Ayyıldız Tim forumu Hariç Hiç Bir şekilde Rütbeli Oldugunu İddaa edenlere inanmayınız..⠀ Ayyıldız Tim Adına Sizden Bilgi Belge TC Kimlik Vb Evrak İsteyenlere Asla Bilgilerinizi Vermeyiniz.

Linux : Paylaşımlı Kütüphaneler

'Linux' forumunda Atilla-Han tarafından 21 Temmuz 2017 tarihinde açılan konu

  1. Atilla-Han Guest

    • Guest
    Katılım:
    30 Haziran 2017
    Mesaj:
    651
    Alınan Beğeniler:
    1,054

    Özel Mesaj
    Bir uygulamayı çalıştırdığımızda, işletim sistemizin çalışma zamanında gerekli olan .so kütüphanelerini bulması gerekmektedir. Eğer gerekli kütüphane bulunmaz ise aşağıdaki gibi bir hata çıktısı verecektir:

    Kod:
    $ ./a.out
    ./a.out: error while loading shared libraries:
    libgsl.so.0: cannot open shared object file: No such file or directory
    Bu hatadan kaçınmak için ilk olarak kütüphanenin sistemimizde olduğundan emin olmamız gerekmektedir. Eğer kütüphane sistemimizde ise kabuk değişkenini(LD_LIBRARY_PATH) kütüphanein bulunduğu dizini içerek şekilde tanımlamamız gerekmektedir.
    Örneğin; Bourne kabuğunda(sh, bash) kütüphane arama yolu aşağıdaki komutla ayarlanabilir:

    Kod:
    $ LD_LIBRARY_PATH=/usr/local/lib
    $ export LD_LIBRARY_PATH
    $ ./a.out
    Bu durumda uygulamamız için gerekli kütüphane /usr/local/lib dizininde de aranacaktır.

    C kabuğu için(Csh, tcsh) eşdeğer komut:

    Kod:
    % setenv LD_LIBRARY_PATH /usr/local/lib
    
    Yukarıdaki örnekte, C kabuğunun standart istemi '%'(yüzdelik) karakteri olduğundan, komutun bir aprçası olarak yazılmamalıdır.

    Bu komutların her seferinde tekrar yazılmasını engellemek için, bireysel veya sistem çapında kullanılan bir dosyaya(.bashrc, vs.) yerleştirilebilir.
     

Bu Sayfayı Paylaş