Einbinden von Bibliotheken (gelöst)

Verschiedenes zu Qt
Antworten
Thorvga
Beiträge: 10
Registriert: 14. November 2009 08:10

Einbinden von Bibliotheken (gelöst)

Beitrag von Thorvga »

Hallo,

ich habe eine mir peinliche Frage:
Ich habe
http://sourceforge.net/projects/qextserialport/files/
runtergeladen und will es in meinem Programm verwenden.
Da ich bisher ohne Einbinden von anderen Klassen zurecht kam, tat sich mir das Problem nicht auf.
Aber WIE kann ich diese Klasse in meinem Projekt verwenden?
Ich dachte ich schaue mir die Beispiele an, die aber nicht bei mir funktionieren wollen.
Wo muss ich die Dateien die ich runtergeladen habe auspacken?
Im Arbeitsordner oder im Unterordner debug?
Wenn ich in der .pro Datei von meinem Projekt reinschreibe:

Code: Alles auswählen

CONFIG(debug, debug|release):LIBS += -lqextserialportd
else:LIBS += -lqextserialport
so akzeptiert das der Compiler noch.
Aber wenn ich dann die Headerdatei einbinden will um die Klasse zu benutzen, also

Code: Alles auswählen

#include <qextserialport>
kommt nur ein
qextserialport: No such file or directory
Vermutlich stelle ich mich nicht gerade geschickt an...
Mir hatte bisher das ausgereicht, was in der Standardbibliothek war und keiner hatte mir erklärt, wie ich fremde Sachen einbinde und auch google und Suche haben mich nicht erleuchtet.
Ich hoffe es ist einer so nett und kann es mir erklären.
Ich wäre sehr erfreut.

Mit freundlichen Grüßen
Thorvga
Zuletzt geändert von Thorvga am 17. November 2009 23:07, insgesamt 1-mal geändert.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Irgendwoher muss der Compiler auch wissen wo er die Header von qextserialport findet, oder?
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Thorvga
Beiträge: 10
Registriert: 14. November 2009 08:10

Beitrag von Thorvga »

Und wo soll die Headerdatei hin und wie sage ich das dem Compiler? =/
AuE
Beiträge: 918
Registriert: 5. August 2008 10:58

Beitrag von AuE »

schau mal inder doku nach INCLUDEPATH
christophr
Beiträge: 26
Registriert: 18. Dezember 2008 16:31
Wohnort: Neuhausen a.d.F.

Beitrag von christophr »

Beachte ebenfalls, dass Bibliotheken unter Windows und Linux/Unix anders eingebungen werden. Die von dir genannte Schreibweise (-lxxx) verstehen nur Compiler unter Unix/Linux (evtl. sogar nur der gcc, da müsste mal einer der Profis was zu sagen). Unter Windows (Visual Studio) musst Du ohne Schalter einfach auf die .lib verweisen.

Schau am besten mal in die Projektdatei von qextserialport bzw. der Demo. Da steht eigentlich alles drin. Ansonsten fällt mir da grad noch die Projektdatei von qwt ein (http://qwt.sf.net). Da wird auch eine Bibliothek unter mehreren Systemen gebaut und später wieder eingebunden (bei den Beispielen).

Gruß,
Christoph
Thorvga
Beiträge: 10
Registriert: 14. November 2009 08:10

Beitrag von Thorvga »

DANKE @christophr
Ein Beitrag mit dem ich viel anfangen konnte, da scheinbar alle als Betriebssystem Unix/Linux haben und dementsprechend in den Beispielen, die ich mir natürlich angeschaut habe, es immer so drin stand.

Es ergab sich zwar ein anderes Problem, siehe anderer Thread von mir, welches sich auf erledigte.
Ich fasse nochmal zusammen, damit andere, die so verzweifelt suchen, wie ich, hier auch nachlesen können:

1. Die Dateien in dem Arbeitsordner des Projekts entpacken, wo es benutzt werden soll.
2. Die .h und .cpp Dateien ins Projekt reinladen. (das hatte mir auch gefehlt).
Das heißt da wo die Projektdateien angezeigt werden im Qt Creater, dort auf dem Ordener mit Rechtsklick und dann "Add Existing Files..." auswählen und die entsprechenden Dateien reinladen.
3. die oben beschriebenen Schritte verwenden.

Danach kann man ganz gewohnt Objekte von den Klassen erzeugen.

Gruß Thorvga
Antworten