Announcement

Collapse
No announcement yet.

.so library in linux erstellen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • .so library in linux erstellen

    Habe mir schon einige tutorials angeschaut, jedoch waren die meisten nur für windows-dlls.

    zur zeit sieht meine header und cpp-datei so aus:

    /* Headerdatei "dlltest.h" */

    struct STRUKTUR
    {
    int wert;
    };

    int Get(STRUKTUR s);
    void Set(STRUKTUR& ref_s, int wert);

    /* Quelltextdatei "dlltest.cpp" */
    #include "dlltest.h"

    int Get(STRUKTUR s)
    {
    return s.wert;
    }

    void Set(STRUKTUR& ref_s, int wert)
    {
    ref_s.wert = wert;
    }

    kompiliert hab ich die dlltest.cpp mit "gcc test.cpp -fpic -shared -o dlltest", was auch ohne fehlermeldung funktioniert hat... nur zugreifen kann ich auf die library nicht

  • #2
    1. Ein Bibliotheksname beginnt unter Linux stehts mit lib und endet auf .so.

    Das ganze geht in etwa so:

    Code:
    prompt> c++ -fPIC -c dlltest.cpp
    prompt> gcc -shared -Wl,-soname,libtest.so -o libtest.so test.o -ldl
    Jetzt kann man dlltest.so mit -L. -ltest eingebunden werden.

    Die Kommas müssen sein!

    Steht auch so im Englischen Howto: http://www.tldp.org
    Zuletzt editiert von Sebastian Rose; 02.11.2007, 18:51.

    Comment

    Working...
    X