linux und make (shared library)



  • hy

    hab ein problem ne shared library zu erzeugen.

    sieht mal so aus:

    CXX = g++
    DEBUG = -g
    CXXFLAGS = -o lib/os2.so -shared
    LDFLAGS = -I/usr/lib/jvm/java-1.4.2/include -I/usr/lib/jvm/java-1.4.2/include/linux
    
    all: os2
    os2: os2.so
    $(CXX) os2.so
    

    fehlermeldung ist:

    missing separator
    

    nja, mir fehlt auch noch meine os2.cpp, weiß aber nicht wo ich die einbinden soll in das makefile.

    thx in advance

    bye



  • kompilier ich mit

    gcc os2.cpp -o lib/os2.so -shared -I/usr/lib/jvm/java-1.4.2/include -I/usr/lib/jvm/java-1.4.2/include/linux
    

    funktioniert das kompilieren

    sorry für die vorzeitige schnelle frage.

    doch wie funktioiniert es nun, wenn ich mehr cpp-dateien habe.

    zb df.cpp, df.hpp
    werden die einfach durch das includieren in os2.cpp mitkompiliert? (liegen in demselben ordner) und dann muss ich noch nen lib-ordner angeben (./lib), in dem die benötigten .h-dateien sind die ich brauche

    tia
    bye



  • Du musst die Anweisung mit einem Tabulator einrücken. Siehe make-Handbuch. (Siehe auch rudpf-FAQ, wenn du ein gutes Makefile als Grundlage nehmen willst)

    So erzeugst du auch keine shared-Library! Siehe Linux-FAQ.



  • dank!


Anmelden zum Antworten