Wofür gibt es die Option "Soname", um gemeinsam genutzte Bibliotheken zu erstellen?
Ich habe gelernt, die "Programmbibliothek HOWTO". Es wird erwähnt, dass mitsoname
um die version wie folgt zu verwalten.
gcc -shared -fPIC -Wl,-soname,libfoo.so.1 -o libfoo.so.1.0.0 foo.c
ln -s libfoo.so.1.0.0 libfoo.so.1
ln -s libfoo.so.1 libfoo.so
Und ich bekomme die Information, dass wenn diesoname
ist nicht gesetzt. es wird gleich libfoo.so.1.0.0 sein, siehe die Antwort vonHier.
Und ich finde, dass es auch ohne Soname funktionieren kann, wie folgt
gcc -shared -fPIC -o libfoo.so.1.0.0 foo.c
ln -s libfoo.so.1.0.0 libfoo.so.1
ln -s libfoo.so.1 libfoo.so
Daher denke ich, dass der einzige nützliche Punkt der istsoname
Option kann Ihnen die Version der gemeinsam genutzten Bibliothek mitteilen, wenn Sie verwendenreadelf -d libfoo.so
Befehl, um es zu überprüfen.
Was kann es sonst noch?