Jawaban:
Untuk menghasilkan pustaka bersama, Anda perlu mengkompilasi kode C Anda terlebih dahulu dengan -fPICbendera (posisi kode independen).
gcc -c -fPIC hello.c -o hello.o
Ini akan menghasilkan file objek (.o), sekarang Anda ambil dan buat file .so:
gcc hello.o -shared -o libhello.so
EDIT : Saran dari komentar:
Kamu bisa memakai
gcc -shared -o libhello.so -fPIC hello.c
untuk melakukannya dalam satu langkah. - Jonathan Leffler
Saya juga menyarankan untuk menambahkan -Walluntuk mendapatkan semua peringatan, dan -guntuk mendapatkan informasi debug, ke gccperintah Anda . - Basile Starynkevitch
gcc -shared -o libhello.so -fPIC hello.cmelakukannya dalam satu langkah.
-Walluntuk mendapatkan semua peringatan, dan -guntuk mendapatkan informasi debug, ke gccperintah Anda .
.oFile @sashoalm pada dasarnya adalah file objek untuk file sumber, sebelum menghubungkannya bersama, ke file yang dapat dieksekusi. Jadi ketika Anda menjalankan gcc -o abc.c abc.ofile objek akan dihasilkan. Maka Anda dapat menggunakan abc.ofile ini untuk membuat .sofile. Untuk membuat begitu banyak file, yang Anda butuhkan hanyalah kode c yang benar yang ditulis dalam .cfile. PS: Hanya untuk menghapus keraguan Anda dalam komentar.