Risposte:
Per generare una libreria condivisa devi prima compilare il tuo codice C con il -fPICflag (posizione codice indipendente).
gcc -c -fPIC hello.c -o hello.o
Questo genererà un file oggetto (.o), ora lo prendi e crei il file .so:
gcc hello.o -shared -o libhello.so
MODIFICA : Suggerimenti dai commenti:
Puoi usare
gcc -shared -o libhello.so -fPIC hello.c
per farlo in un solo passaggio. - Jonathan Leffler
Suggerisco anche di aggiungere -Wallper ottenere tutti gli avvisi e -gottenere informazioni di debug ai gcccomandi. - Basile Starynkevitch
gcc -shared -o libhello.so -fPIC hello.cper farlo in un solo passaggio.
-Wallper ottenere tutti gli avvisi e -gottenere informazioni di debug ai gcccomandi.
.ofile @sashoalm è fondamentalmente un file oggetto per il file sorgente, prima di collegarli insieme, nell'eseguibile finale. Quindi quando si esegue gcc -o abc.c abc.oun file oggetto verrebbe generato. Quindi è possibile utilizzare questo abc.ofile per creare il .sofile. Per creare così tanti file, tutto ciò che serve è un codice c corretto scritto in un .cfile. PS: solo per chiarire i tuoi dubbi nel commento.