GNU/Linux >> Znalost Linux >  >> Linux

Co je soubor .so?

Soubor .so je zkompilovaný soubor knihovny. Je to zkratka pro "Shared Object" a je obdobou Windows DLL.

Soubory balíčků je často při instalaci umístí do /lib nebo /usr/lib nebo na nějaké podobné místo. Pokud rozbalíte soubor .so do umístění ve vaší $LD_LIBRARY_PATH, program, který vyžaduje knihovnu, by jej měl umět použít.

V ideálním případě si přečtěte doprovodnou dokumentaci, abyste se ujistili, že je na správném místě.

Pokud spustíte příkaz jako locate adobe-flashplugin z Terminálu můžete vidět některé existující podobně pojmenované knihovny.


Existují dva typy knihoven Linux C/C++, které lze vytvořit. Jedná se o statické knihovny (.a) a Dynamicky propojené knihovny objektů fragmentů (.so)

Pokud jde o (.so) , existuje pouze jedna forma této knihovny, ale lze ji použít dvěma způsoby.

1) Dynamicky propojené za běhu, ale staticky uvědomělé. Knihovny musí být dostupné během fáze kompilace/propojení. Sdílené objekty nejsou zahrnuty do spustitelné komponenty, ale jsou svázány s prováděním.

2) Dynamicky načteno/uvolněno a propojeno během provádění (tj. zásuvný modul prohlížeče) pomocí systémových funkcí dynamického načítání odkazů.

Soubory balíčků obvykle při instalaci umístí soubory ".so" do /lib nebo /usr/lib.


Jde o dynamicky propojenou knihovnu sdílených objektů, která je analogická souboru .dll ve Windows.

Zde je několik příspěvků pro instalaci Flash 10 v Ubuntu x64 a x86:

  • Nainstalujte Flash Player 10 pod Ubuntu Linux (x86)
  • Nainstalujte Flash 10 pod Ubuntu Linux 64bit Edition (x64)

Před instalací 10 se ujistěte, že jste odinstalovali všechny předchozí verze Flash.


Linux
  1. Co je číslo inodu v Linuxu?

  2. Co dělá Exec 3?

  3. Co je File Transfer Protocol (FTP)

  1. C++:jakou knihovnu regulárních výrazů bych měl použít?

  2. Jaký je trik LD_PRELOAD?

  3. K čemu slouží soubor .la libtool?

  1. Co se počítá jako úprava nebo změna souboru?

  2. Proč Grep považuje soubor za binární?

  3. Co způsobuje, že soubory ztrácejí oprávnění?