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?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage