Řešení chyby „Shared Object Lib Not Found“ na obrazovce Putty
Jednou z často se vyskytujících chyb při spouštění serverů Metin2 PVP přes Putty (SSH) je "Sdílený objekt 'lib...' nenalezen, vyžaduje 'hra'" Je to varování. K této chybě dochází, když hlavní spustitelné soubory hry (hra a binární db) nemohou najít potřebné knihovny 32bitové kompatibility nebo speciální knihovny zdrojového kódu, které potřebuje, v operačním systému FreeBSD, což zcela znemožňuje spuštění serveru. Chcete-li problém vyřešit, postupujte podle níže uvedených kroků.
Metoda 1: Ruční nahrání chybějící knihovny na server
Chybová zpráva obvykle jasně uvádí název chybějícího souboru (např.libmd.so.5,libssl.so.10,libstdc++.so.6atd.). Ruční zavedení tohoto souboru do systému je nejdefinitivnějším řešením:
- Nejprve získejte soubor `.so` zmíněný v chybové zprávě ze zabezpečeného zdroje na internetu nebo z jiného běžícího serveru Metin2.
- Připojte se k serveru pomocí Filezilla nebo WinSCP.
- Nainstalujte chybějící soubor do následujícího adresáře v závislosti na verzi a infrastruktuře FreeBSD:
/usr/lib32/
*(Pokud je váš soubor na starším operačním systému/usr/lib/Můžete také zkontrolovat adresář).* - Klikněte pravým tlačítkem na soubor, který jste nahráli, Oprávnění k souboru (Chmod) zadejte hodnotu 777 Aktualizovat jako .
Metoda 2: Vytvoření symbolického odkazu
Někdy hledaná knihovna skutečně existuje na vašem serveru, ale liší se pouze číslem verze (např.libmd.so.6existuje ale hralibmd.so.5hledá). V tomto případě můžeme vytvořit symbolický odkaz uvedením systému v omyl:
- Připojte se k terminálu Putty a zadejte adresář knihovny:
cd /usr/lib32 - Chcete-li hypertextově propojit existující aktuální soubor se starým hledaným názvem souboru, spusťte svým vlastním způsobem následující příkaz:
ln -s libmd.so.6 libmd.so.5 - Díky tomuto příkazu se hra
libmd.so.5Systém automaticky běží na pozadí, když volá soubor.libmd.so.6spustí soubor.
Metoda 3: Instalace balíčků 32bitové kompatibility FreeBSD
Pokud jste ji na svůj server nainstalovali úplně od začátku a nejsou k dispozici téměř žádné základní knihovny, můžete si hromadně stáhnout knihovny 32bitových knihoven pomocí oficiálního správce balíčků FreeBSD. Spusťte následující příkazy přes Putty:
pkg update pkg install compat9x-i386 pkg install compat10x-i386 pkg install compat11x-i386
*(Poznámka: Měli byste si vybrat kompatibilní balíček, který je vhodný pro verzi FreeBSD vašeho serveru. Pokud například používáte FreeBSD 13, měli byste nainstalovat balíčky `compat13x`).*
Metoda 4: Statické propojení během fáze kompilace zdroje (sestavení).
Pokud máte zdrojový kód hry, můžete knihovny vložit přímo do souboru hry během fáze kompilace, nezávisle na vnějšku (statický odkaz). Nezáleží tedy na tom, která knihovna je na serveru:
- ve zdrojové složce vaší hry
MakefileOtevřete soubor. - Řádky obsahující možnosti kompilace (příznaky)
-staticZnovu zkompilujte zdroj přidáním parametru (get Build).
Tento článek je speciálně připraven pro PvPServer.