Jak mówi tytuł, jaka jest różnica między "plikiem obiektu programu" (rozszerzenie .o) i "plikiem biblioteki" (rozszerzenie .so)Jaka jest różnica między plikiem obiektu .o a plikiem biblioteki .so?
12
A
Odpowiedz
8
Cóż, minęło trochę czasu, więc wybacz mi, jeśli jestem całkowicie błędne, ale to zasadniczo oznacza, że kod wewnątrz .so może być relokowalny.
.so jest zasadniczo biblioteką DLL, która może być używana przez wiele aplikacji, ale jest ładowana tylko raz do pamięci. Plik .o musi zostać połączony z aplikacją, aby udostępnić funkcjonalność kodu.
To się nazywa łączenie statyczne (.o) vs dynamiczne łączenie (.so)
Patrz: IBM Developer Works lub Uni of Calgary lub IECC uzyskania dalszych informacji
Nadzieja ta odpowiada na pytania (i mam nadzieję, że mój jest wyjaśnieniu poprawne!)