Seite 1 von 1
[solved] QT4 und QextSerialPort / QextSerialenumerator
Verfasst: 29. Januar 2008 13:03
von ape
Hallo,
ich bastel gerade an einer kleinen (Windows)-Applikation die basierend auf QT ein digitales Netzteil ansprechen soll (irgendwann

)
Grundkonzept in QT steht soweit, nun bin ich auf QextSerialPort aufmerksam geworden. Das letzte Release auf SF.net ( qextserialport-1.2win-alpha)
kommt nun auch mit neuen Beispielen daher, u.a. mit
* QextSerialEnumerator,
welches einfach nur das System nach vorhandenen Serial-Ports checkt und diese ausgibt.
Beispiel konnte ich compilen und geht soweit auch.
Nun will ich mich dran machen und den Beispiel Code mal in mein QT Projekt integrieren. Da mein Vorwissen mit c++ & QT nicht sehr umfangreich ist, stosse ich hier auf erste Probleme. Denke primar mangelt es an dem Hintergrund wie genau ich diese neuen Sourcen (QextSerialPort) in mein bestehendes QT Projekt einbinde (und welcher Ansatz der bessere ist)
Vom Ansatz her würde ich die relevanten QextSerialPort .h & .cpp files gerne separat ablegen (eigener Ordner).
Wie würdet ihr vorgehen ?
Gruss
ape
Verfasst: 29. Januar 2008 13:27
von jd
Hallo, ich beschäftige mich auch gerade mit QextSerialPort, QextSerialPort musst du compilieren, dann bekommst du eine .dll Datei heraus unter Linux eine .so die bindest du in deinem Projekt ein, die QextSerialPort .cpp und .h files kannst du auch in dein Projekt einbinden (separater Ordner zu empfehlen), weil wenn du das Programm portierst, wäre es schön wenn du dein Third-Party Baukasten gleich mit lieferst

Verfasst: 29. Januar 2008 13:49
von methusalem
schaut mal hier:
http://www.qt-forum.de/forum/viewtopic.php?t=5978
Da gibts noch mehr, die sich mit dem Thema beschäftigen!
Verfasst: 29. Januar 2008 13:54
von ape
Hi,
@jd:
klar, ich habe QextSerialPort compiled und im Projekt einen Ordner:
"inc" -> "qextserialport" erstellt.
Dieser beinhaltet im Moment die .dll sowie alle .h & .cpp files.
Zumindest würde ich so meine nicht qt-sachen gerne ablegen.
Was mich irritiert, zugegebenerweise eher ein allgemeines C++ Thema wie ausschliesslich QT relevant, wie ich diese nun in mein Projekt einbinde.
Muss ich dafür den neuen Pfad im .pro File hinterlegen, oder wie erklaere ich meinem Qt-App'chen sonst wo genau der QextSerialPort relevante Teil liegt ?
@methusalem:
danke. ich lese mich parallel grad durch die Such-Treffer wobei ich in so manchem Schritt einfach noch grundlegende Probleme habe.
Verfasst: 29. Januar 2008 14:00
von methusalem
arbeitest du unter Windows oder unter Linux?
Wenn unter Windows: Mit Cygwin oder mit VisualStudio?
Ich könnte dir mal ein mini-Projekt schicken, in dem du siehst, wie QextSerialPort in ein QT Projekt eingebaut wurde.
Verfasst: 29. Januar 2008 14:03
von methusalem
ape hat geschrieben:...
Muss ich dafür den neuen Pfad im .pro File hinterlegen, oder wie erklaere ich meinem Qt-App'chen sonst wo genau der QextSerialPort relevante Teil liegt ?
mit "qmake -project" erstellst man eine pro Datei. Dabei versucht qmake die Verzeichnisse zu erkennen, in denen deine Sourcen liegen.
Nun musst du die pro Datei an deine speziellen Wünsche(Pfade) anpassen. Gerade externe Bibliotheken kann "qmake" nicht erraten.
mit "qmake" machst du dann aus der pro Datei ein Makefile.
Verfasst: 29. Januar 2008 14:08
von ape
ich verwende einen der kleinen exoten bzgl IDE unter meiner Windows Vista Installation.
Namentlich: HaiQ (
www.higt.org)
An dem Mini-Projekt wäre ich trotzdem stark interessiert.
Das grundsätzliche .pro File habe ich ja, klappt auch solange ich mich auf reine QT Files beziehe, Problem ist also letztlich wirklich nur die neuen nicht QT eigenen Files einzubinden (zumindest im moment hehe)
Danke im voraus

Gruss
fidel
Verfasst: 29. Januar 2008 14:18
von methusalem
Hier mal meine pro Datei:
Code: Alles auswählen
TEMPLATE = app
TARGET =
DEPENDPATH += . include src ui
INCLUDEPATH += . include
# Input
HEADERS += include/hauptfenster.h
FORMS += ui/hauptfenster.ui
SOURCES += src/hauptfenster.cpp src/main.cpp
win32:LIBS += lib/qextserial.lib
Nur die letzte Zeile habe ich von Hand eingefügt. Und INCLUDEPATH um das Verzeichnis erweitert, in den ich meine *.h Datei liegen habe.
Verfasst: 30. Januar 2008 12:49
von ape
der Abgleich deiner .pro mit der des examples sowie meiner hat die lösung gebracht.
danke methusalem