Mehrere Lib-Versionen



  • Hallo,

    wie erreiche ich es, dass ich mehrere Versionen von Libs parallel betreiben
    kann?

    Z.B.
    Im Verzeichnis /usr/local/include/:
    bib-1.0/
    bib-2.0/

    Die Includes kann ich dann in den Headern der Programme ansprechen (#include
    <bib-1.0/bla.h>). Aber wie bekomme ich es mit den Libs hin?

    Z.B.
    Im Verzeichnis /usr/local/lib/:
    bib-1.0/bla.so
    bib-2.0/bla.so

    oder

    bla.so.1.0???
    bla.so.2.0???

    Danke und Gruß

    Boris



  • geh mal in /usr/lib und mach ein ls -l. Dann wirst du sehen, dass Libraries immer mit Versionskennung gespeichert werden und auf die Version die default mäßig gelinkt werden soll ein symlink existiert.

    Also
    libbib.so.1.0
    libbib.so.1.1
    libbib.so -> libbib.so.1.1



  • Ok, aber ich möchte nicht jedes Mal den Default-Link umsetzen, wenn ich eine andere Version nehmen möchte. Ich möchte eigentlich nur dem Linker mitteilen welche Version er nehmen soll.



  • Hallo,

    dann musst du die Versionen eben in ein anderes Verzeichnis kopieren. Entweder du trägst das dann in deine /etc/ld.so.conf ein, oder du guckst mit configure help, wie du das entsprechende Verzeichnis angeben kannst.



  • oder du machst einfach
    libbib-1.0.so
    libbib-1.2.so

    und dann linkst du eben mittels -lbib-1.0 bzw -lbib-1.2.


Anmelden zum Antworten