fpic

Opcja GCC-fPIC

Czytałem o opcjach GCC dla Konwencji generowania kodu , ale nie mogłem zrozumieć, co robi " Generowanie kodu niezależnego od pozycji (PIC)". Proszę podać przykład, który wyjaśni mi, co to oznacza.

Co oznacza-fPIC podczas budowania biblioteki współdzielonej?

Wiem, że opcja '-fPIC ' ma coś wspólnego z rozwiązywaniem adresów i niezależnością między poszczególnymi modułami, ale nie jestem pewien, co to naprawdę znaczy. Możesz to wyjaśnić?

Jaka jest różnica między parametrami gcc `-fpic` i `-fPIC`?

Przeczytałem już stronę podręcznika gcc, ale nadal nie rozumiem różnicy między -fpic A -fPIC. Czy ktoś może to wyjaśnić w bar ... onej? jakie, jeśli w ogóle, są implikacje kompilacji obiektów z flagą gcc-fPIC, jeśli zostaną użyte w plikach wykonywalnych?

Dlaczego fPIC jest absolutnie konieczny na platformach 64, a nie 32bit?

Ostatnio dostałem: ...Relokacja R_X86_64_32 przeciwko 'symbolowi lokalnemu' nie może być użyta podczas tworzenia obiektu ... i. W poszukiwaniu więcej o różnych rodzajach relokacji znalazłem to i ostatecznie x86_64 ABI reference (patrz strona 68) ]

Biblioteki współdzielone i.pliki h

Mam pewne wątpliwości co do tego, jak programy korzystają ze współdzielonej biblioteki. Kiedy buduję bibliotekę współdzielon ... osób, w jaki programy c++ wykorzystują kod przechowywany w systemowej bibliotece współdzielonej. ie tylko w tym stdlib.h itp.

Łączenie biblioteki współdzielonej z biblioteką statyczną: czy biblioteka statyczna musi być skompilowana inaczej niż gdyby łączyła ją aplikacja?

Przynajmniej na Linuksie i Solarisie, biblioteki statyczne są tak naprawdę tylko zbiorem skompilowanych.o jest wrzucone do je ... udostępniony (nie jest jasne, czy to wszystko nie jest udostępniane, czy tylko statycznie połączone części, czy ktoś wie?).

Jak przekompilować za pomocą-fPIC

Próbowałem ponownie zainstalować mój ffmpeg, zgodnie z tym Przewodnik , na moim komputerze ARM Ubuntu. Niestety, kiedy kompi ... eraz chciałbym go przekompilować -fPIC tak jak sugeruje kompilator, ale nie mam pojęcia jak. Każda pomoc jest mile widziana.