Domanda

Il mio processo di compilazione è costituito dal generatore di qmake Makefile di Qt e dalla tipica utility make in bundle con Linux. La mia applicazione è composta da alcune librerie condivise e l'applicazione principale è collegata a esse.
Come posso applicare il tipico schema di versioning di Linux sulle mie librerie? (Usa la versione 2 - > link contro foo.so.2 che punta a foo.so.2.y.z con un link generato da ldconfig).

La risposta non deve essere specifica per il mio processo di compilazione.

È stato utile?

Soluzione

La tua libreria dovrebbe essere chiamata libfoo.so.2.yz , con collegamenti simbolici di libfoo.so.2 e libfoo.so entrambi indicando quello. La libreria dovrebbe essere creata usando -soname libfoo.so.2 nella riga di comando del linker (o -Wl, -soname, libfoo.so.2 nella riga di comando gcc ).

Spero che ti aiuti!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top