Nowe posty

Autor Wątek: Stare biblioteki do gier.  (Przeczytany 2376 razy)

Offline

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 278
    • Zobacz profil
Stare biblioteki do gier.
« dnia: 2023-08-11, 09:46:55 »
Witam!
Ostatnio chciałem odpalić kilka starszych gier, niestety nie mogę nigdzie znaleźć bibliotek:
libopenal.so.1 => not found
libidn.so.11 => not found
librtmp.so.0 => not found
libXtst.so.6 => not found
libdbus-glib-1.so.2 => not found
Czy jest możliwość pobrania takich bibliotek?
Gdzie mogę to znaleźć?
Moja dystrybucja Debian 12.

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 2703
  • 1709
    • Zobacz profil
Odp: Stare biblioteki do gier.
« Odpowiedź #1 dnia: 2023-08-11, 23:49:56 »
1. Domyślnie większość dystrybucji linux jest zaprojektowanych by gry i ich zależności były od razu w repozytorium.

2. Domyślnie programy / gry powinno się kompilować.
- Instalujesz zależności i kompilujesz, budujesz pakiet i instalujesz.
- Jeśli nie ma zależności, to je trzeba także trzeba skompilować, zbudować pakiety i zainstalować.
- Jeśli np. GCC jest zbyt nowe i gra / program pluje błędy związane z GCC,
 to powinno się błędy naprawić, ewentualnie w ostateczności zainstalować starsze GCC.
- Trzeba się liczyć że mogą być konflikty pakietów, dlatego testować należy na osobnym systemie,
np. drugim systemie zainstalowanym na Virtualboxie.

3. Ale z doświadczenia wiem że są też gry i programy " portable" przenośne.
Problem w tym że na nie ktorych systemach okazuje się że nie są 100 % przenośne, bo chce jakąś bibliotekę.

Jak sobie poradzić ?

- 3.1.  Użyj komendy strace na grze, przykład użycia https://forums.linuxmint.com/viewtopic.php?f=90&t=327413&p=1866586&hilit=strace+e+open#p1866586
Pokaże Ci to jeszcze raz jakich bibliotek potrzebuje oraz gdzie ich szuka.
Tych ścieżek gdzie szuka danej biblioteki jest zazwyczaj kilka.

- 3.2. Użyj komendy " apt-file search " które wyszuka nazwy w repozytorium.
apt-file search /path/file
lub użyj wyszukiwarki https://packages.debian.org/index

- 3.3. Znajdź bibliotekę w systemie, zwykle wystarcza komenda " locate "
Przykład
locate libopenal.so.1 | grep so.1$ | grep -v /home
Szukam libopenal.so.1, następnie przy pomocy filtruję z końcówką so.1 i na końcu wykluczam z katalogu home.
Jeśli nie jestem do jakiego pakietu plik należy to mogę spróbować sprawdzić  " dpkg -S "

- 3.4. Jeśli zainstalowana biblioteka jest zbyt nowa, to czasem pomaga stworzenie linku symbolicznego ( ale nie zawsze to pomaga ).

- 3.5. Jeśli to nie pomaga to zostaje kompilacja.

PS. Komendy apt-file i dpkg -S używałem na Mincie, ale przypuszczam że na Debianie też będą.
« Ostatnia zmiana: 2023-08-11, 23:59:05 wysłana przez 1709 »
PS: Brak polskiej czcionki, nie jest to brak lenistwa, a jej brak w systemie i brak czasu na reczne poprawki.

Offline

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 278
    • Zobacz profil
Odp: Stare biblioteki do gier.
« Odpowiedź #2 dnia: 2023-08-12, 10:16:19 »
Dziękuję bardzo.
Okazało się że musiałem doinstalować raptem 3 pakiety, a reszta bibliotek była w systemie, tylko ta gnuśna gra koniecznie musiała mieć "podane na tacy" w swoim katalogu i686. 🤬

Offline PippaMartin

  • Nowy na forum
  • *
  • Wiadomości: 1
    • Zobacz profil
Odp: Stare biblioteki do gier.
« Odpowiedź #3 dnia: 2023-09-19, 23:18:43 »
Domyślnie programy i gry powinny być kompilowane, co jest standardową procedurą. Po instalacji niezbędnych zależności, kompilacji, oraz zbudowaniu pakietu, możemy przystąpić do instalacji.