- Mesaj
- 11.941
- Çözümler
- 567
- Beğeni
- 13.659
- Puan
- 5.915
- Ticaret Puanı
- 2
Merhaba arkadaşlar,
Bu rehber konumuzda özellikle yeni başlayanların sıklıkla yaşadığı sorunlardan bir tanesi olan lib hatalarının çözümünden bahsedeceğim.
Yazılı anlatıma geçmeden önce videolu anlatımı izleyebilirsiniz.
Metin2 server files kurulumu sırasında sıklıkla karşılaşılan lib hataları şunlardır;
Bilgisayarımıza yüklediğimiz programların çalışabilmesi için ekstra dll dosyalarına ihtiyaç duyduğu gibi server filesimizin çalışabilmesi için lib dosyalarına ihtiyacı var.
Server filesimizin istediği lib dosyalarını öğrenmek için şu komutu terminale yazabilirsiniz.
Bu komut sayesinde hangi lib dosyalarına ihtiyacı olduğunu görebiliriz. Bendeki sonuçlar;
Resimden de göreceğiniz üzere kurulu olmayan lib dosyalarını not found olarak gösteriyor.
Hazır lib atmak yerine. Bu lib dosyaların hangi paketler ile kurulduğunu öğrenerek daha kolay çözüme ulaşabiliriz. Bunun için pkgs.org sitesini kullanabiliriz.
Yada arama motoruna şunu aratarak bulabilirsiniz.
libstdc++.so.6 freebsd pkgs.org
Sayfada işletim sistemleri listesi çıkacak. Biz freebsd üzerinde çalıştığımız için freebsd kategorisinde listelenenlere bakacağız. Eğer freebsd sürümünüzü bilmiyorsanız şu komutu yazabilirsiniz.
Örnek çıktı;
Paketi kurmadan önce mimari ve sürümü bilmemiz gerekiyor.
Benim kullandığım sürüm ise freebsd 11.3, 64bit.
i386 => 32bit
amd64 => 64bit
Sürüm ve mimariyi öğrendiğimize göre pkgs.org'da çıkan sonuçlara göre kuracağımız paketi seçiyoruz.
Yukarıdaki görselde libstdc++.so.6 dosyası listede belirtilen paketler ile geliyormuş. Bunlardan birisini yükleyerek bu sorunu çözebilirsiniz.
Mesela compat9x'i kuralım. Bilgi alabilmek için linke tıklıyoruz.
Resimde işaretlediğim yer paketin adı oluyor. Bu paketi kurabilmek için şu komutu yazıyoruz.
Paket kurulduktan sonra tekrar oyunu açmaya çalışabilirsiniz.
Not: Eksik lib dosyanızı kurduktan sonra game dosyası ile uyumsuz olabilir. Bunun için listede gösterilen paketleri tek tek kurup denemeniz gerekiyor. Ben videolu anlatımda compat9x ile başarılı olamadım ama gcc9 ile çalıştı.
Not2: Paketi kurduktan sonra bile yine not found hatası veriyorsa sistem görmüyor demektir. Videoda gösterdiğim gibi symlink oluşturarak çözebilirsiniz.
Çözemediğiniz sorunlar olursa yardım konusu açabilirsiniz.
Bu rehber konumuzda özellikle yeni başlayanların sıklıkla yaşadığı sorunlardan bir tanesi olan lib hatalarının çözümünden bahsedeceğim.
Yazılı anlatıma geçmeden önce videolu anlatımı izleyebilirsiniz.
Metin2 server files kurulumu sırasında sıklıkla karşılaşılan lib hataları şunlardır;
Kod:
Shared object "libstdc++.so.6" not found, required by "game"
Shared object "libmd.so.5" not found, required by "game"
Shared object "libssl.so.8" not found, required by "game"
/usr/lib/libstdc++.so.6: version GLIBCXX_3.4.10 required by /usr/game/share/bin/game not found
Bilgisayarımıza yüklediğimiz programların çalışabilmesi için ekstra dll dosyalarına ihtiyaç duyduğu gibi server filesimizin çalışabilmesi için lib dosyalarına ihtiyacı var.
Server filesimizin istediği lib dosyalarını öğrenmek için şu komutu terminale yazabilirsiniz.
Kod:
ldd game
Bu komut sayesinde hangi lib dosyalarına ihtiyacı olduğunu görebiliriz. Bendeki sonuçlar;
Kod:
root@casro2:/home/casro2sf/srv1/share/bin # ldd game
game:
libmd.so.6 => /usr/lib32/libmd.so.6 (0x288ec000)
libssl.so.8 => /usr/lib32/libssl.so.8 (0x2890a000)
libcrypto.so.8 => /usr/lib32/libcrypto.so.8 (0x28964000)
libstdc++.so.6 => not found ()
libm.so.5 => /usr/lib32/libm.so.5 (0x28afb000)
libgcc_s.so.1 => /usr/lib32/libgcc_s.so.1 (0x28b2c000)
libthr.so.3 => /usr/lib32/lib/libthr.so.3 (0x28b3d000)
libc.so.7 => /usr/lib32/libc.so.7 (0x28b61000)
root@casro2:/home/casro2sf/srv1/share/bin #
Resimden de göreceğiniz üzere kurulu olmayan lib dosyalarını not found olarak gösteriyor.
Hazır lib atmak yerine. Bu lib dosyaların hangi paketler ile kurulduğunu öğrenerek daha kolay çözüme ulaşabiliriz. Bunun için pkgs.org sitesini kullanabiliriz.
Yada arama motoruna şunu aratarak bulabilirsiniz.
libstdc++.so.6 freebsd pkgs.org
Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.
Sayfada işletim sistemleri listesi çıkacak. Biz freebsd üzerinde çalıştığımız için freebsd kategorisinde listelenenlere bakacağız. Eğer freebsd sürümünüzü bilmiyorsanız şu komutu yazabilirsiniz.
Kod:
uname -a
Kod:
Freebsd casro2 11.3-STABLE Freebsd 11.3-STABLE #0 r355604: Thu Dec 12 02:09:46 UTC 2019 @[email protected]:/usr/obj/usr/src/sys/GENERIC amd64
Paketi kurmadan önce mimari ve sürümü bilmemiz gerekiyor.
Benim kullandığım sürüm ise freebsd 11.3, 64bit.
i386 => 32bit
amd64 => 64bit
Sürüm ve mimariyi öğrendiğimize göre pkgs.org'da çıkan sonuçlara göre kuracağımız paketi seçiyoruz.
Yukarıdaki görselde libstdc++.so.6 dosyası listede belirtilen paketler ile geliyormuş. Bunlardan birisini yükleyerek bu sorunu çözebilirsiniz.
Mesela compat9x'i kuralım. Bilgi alabilmek için linke tıklıyoruz.
Resimde işaretlediğim yer paketin adı oluyor. Bu paketi kurabilmek için şu komutu yazıyoruz.
Kod:
pkg install compat9x-amd64
Paket kurulduktan sonra tekrar oyunu açmaya çalışabilirsiniz.
Not: Eksik lib dosyanızı kurduktan sonra game dosyası ile uyumsuz olabilir. Bunun için listede gösterilen paketleri tek tek kurup denemeniz gerekiyor. Ben videolu anlatımda compat9x ile başarılı olamadım ama gcc9 ile çalıştı.
Not2: Paketi kurduktan sonra bile yine not found hatası veriyorsa sistem görmüyor demektir. Videoda gösterdiğim gibi symlink oluşturarak çözebilirsiniz.
Çözemediğiniz sorunlar olursa yardım konusu açabilirsiniz.
Bu yazının tamamı ve videolu anlatım MMO Tutkunları'na ait özgün içeriktir. Kaynağı gösterildiği sürece başka platformlarda paylaşılabilir.