C libary in C++ Laden?



  • Hallo,

    ich versuche gerade ein bisschen mit Joystick zu experimentieren.
    Folgende Situation:
    Habe Ubuntu 9.4, QT Creator 1.0 und libjsw für den Joystick.
    Ich erstelle mit QT Creator eine C++ QT Applikation und versuche dann die libjsw zu laden. Dies ist allerdings eine C libary. Und deshalb bekomme ich "ld gab 1 als Ende-Status zurück" als Fehlermeldung. Habe woanders gelesen das man bei der include Datei extern "C" schreiben soll also in meinem Fall

    extern "C" {
        #include <jsw.h>
    }
    

    Dies bringt aber die selbe Fehlermeldung.

    Falls dies eher ins C++ Forum gehört, bitte verschieben.
    Hoffe Ihr habt ein Rat für mich.

    Gruß schirrmie



  • schirrmie schrieb:

    "ld gab 1 als Ende-Status zurück"

    Das sagt ja nur, daß es beim Linken irgendeinen Fehler gab. Davor sollten noch andere Fehlermeldungen angezeigt werden, und das wären jetzt die, auf die es wirklich ankommt.

    Linkst du denn auch mit der Library? Dazu müsstest du sowas wie -ljsw dem Compiler als Parameter übergeben. Und das extern "C" brauchst du nicht, da das in der jsw.h selbst schon drinsteht.



  • Hmm du hast recht das die lib nicht richtig angegeben ist, wenn ich ein Example mit g++ compiliere funktioniert es.
    Ich habe in dem Projekt Ordner von QT 3 Makefiles: Makefile, Makefile.Release und Makefile.Debug und in allen haben ich bei LIBS -ljsw angegeben aber irgendwie scheint er das nicht zu nehmen. Also stellt sich die Frage wie man bei QT Creator eine lib angegeben kann. Aber das werde ich noch mal in dem IDE Forum posten.

    Danke erstmal

    Gruß schirrmie


Log in to reply