Skocz do zawartości
Zaloguj się, aby obserwować  
Groszeq

Problem przy libkach Debian

Polecane posty

Witam,

 

Postanowiłem postawić serwer w grze Call of Duty 1 i mam mały problem. Przy uruchamianiu serwera:

./cod_lnxded: error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory

Następnie wykonałem:

apt-get install libstdc++5

Komunikat jaki otrzymałem to wklepaniu komendy powyżej:

^[[?6c^[[?6clibstdc++5 jest juĹź w najnowszej wersji.
0 aktualizowanych, 0 nowo instalowanych, 0 usuwanych i 24 nieaktualizowanych.

W czym może leżeć problem? Jeżeli mam podesłać jakieś zawartości plików, komunikaty to proszę o informację.

 

System to Debian 7.5 - wersja z paczki OVH.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

cod jest aplikacją 32bit system pewnie masz 64bit

 

apt-get install lib32gcc1

 

Jeśli będziesz miał problem z brakiem pakietów użyj

 

dpkg --add-architecture i386
apt-get update
apt-get install lib32gcc1

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Wpisałem:

 

 

Zainstalowało libki.

 

Następnie próba uruchomienia serwera:

Komenda:

./cod1-start

Po wpisaniu ww. komendy komunikat:

./cod_lnxded: error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory

Zawartość pliku cod1-start:

#!/bin/bash



cd /home/cod1

./cod_lnxded +set sv_punkbuster 1 +set fs_basepath /home/cod1 +set fs_homepath /home/cod1 +set sv_maxclients 32 +set net_ip 37.187.104.81 +set net_port 28960 +exec server.cfg +map_rotate

Chyba nadal jest problem z libkami a nie samym plikiem cod1-start, więc na ten moment można chyba pominąć sprawdzanie poprawności tego pliku.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
 linux-gate.so.1 =>  (0xf77e2000)
        libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xf77d7000)
        libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 (0xf77be000)
        libstdc++.so.5 => not found
        libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xf7797000)
        libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf777a000)
        libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xf7616000)
        /lib/ld-linux.so.2 (0xf77e3000)

Zastanawia mnie to: libstdc++.so.5 => not found - jednak z tego co pamiętam to instalowałem (chyba, że nie ta komenda i zainstalowało mi zupełnie inne lib).

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Poszukaj pliku w systemie:

find /lib* /usr -name 'libstdc++.so*'

Jeśli znajdzie to ścieżkę musisz dodać do /etc/ld.so.conf lub /etc/ld.so.conf.d/ i odpalić ldconfig. Stawiam, że masz w systemie bibliotekę libstdc++.so.6. Ja bym spróbował zrobić symlinka o nazwie libstdc++.so.5.

 

Ewentualnie możesz uruchomić binarkę ze zmienną:

LD_LIBRARY_PATH="/katalog/do/bibliotek:/inny/katalog" ./cod_lnxded

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
/usr/lib/x86_64-linux-gnu/libstdc++.so.5
/usr/lib/x86_64-linux-gnu/libstdc++.so.5.0.7
/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.17
W folderze ld.so.conf.d mam pliki:
i486-linux-gnu.conf
libc.conf
x86_64-linux-gnu.conf
zz_i386-biarch-compat.conf

Nie rozumiem za bardzo gdzie mam dodać i jak ścieżkę do tego /etc/ld.so.conf.d/ ew. symlinka.

Aż tak w linuxie nie jestem oblatany, a z kilkukrotnym postawieniem serwera TS3, CS 1.6, ET czy MC nie miałem takich problemów jak przy CoDzie. W google nt. bibliotek nie ma zbyt dużo napisane, a jak jest i występuje podobny problem do mojego to jedynie zalecają zainstalowanie ich. U mnie jak widać libstdc++.so.5.0.7 jest więc problem jest bardzo dziwny - jak dla mnie.

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

W takim razie brakuje Ci jeszcze pakietu lib32stdc++6.

apt-get install lib32stdc++6

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Nadal wyskakuje błąd:

./cod_lnxded: error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory

Kurcze, co jest grane skoro so.5 są:

/usr/lib/x86_64-linux-gnu/libstdc++.so.5
/usr/lib/x86_64-linux-gnu/libstdc++.so.5.0.7

A nawet po wpisaniu:

 

ldd ./cod_lnxded

libstdc++.so.5 => not found

Chyba, że problem tkwi w czymś innym, a nie już o same libki 5.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Tak trudno zauważyć, że potrzebujesz libstdc++ z i386, a nie x86_64?

 

Jak nie masz multiarcha to instalujesz ia32-libs.

 

Jak masz, to lib32stdc++6, poprzedzone dpkg --add-architecture i386 i apt-get update.

Edytowano przez Archi (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Ruszyło.

 

wielkie dzięki @Archi i @ahes oraz pozostałym za pomoc.

 

Pozdrawiam i jeszcze raz dzięki.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się

Zaloguj się, aby obserwować  

×