Seite 1 von 1

Normales c Programm und Version von qt damit rauskriegen?

Verfasst: 3. März 2007 10:32
von pjotr
Hallo wie kann ich durch ein normales kleines C Programmchen das mit gcc kompiliert wird die Version von der installierten QT -Version rausfinden ohne dass ich da Projektfiles mit gmake und so erzeugen muss.? Ich habe mit qt keine Erfahrung hab aber nur so Tutorial Beispiele gemacht.

Code: Alles auswählen

#include <qapplication.h>
#include <stdio.h>
int main()
 {
 const char * c_Version = qVersion();
 printf("%s",c_Version);
 return 0;
}

Ich kann den Code oben mit gmake und so komilieren und es wird mir die Version angezeigt - wie kann ich sowas aber nur mit gcc machen?
hab mir sowas vorgestellt gcc -o version version.cpp ? Ich bekomme nie die qapplication.h Library zum komilieren dazu? Bei der qt Installation hab ich auch alles zum PATH dazugefügt aber weiß nicht wo das h file ist und kann es auch nicht finden?

Code: Alles auswählen

main.cpp:1:26: error: qapplication.h: No such file or directory
main.cpp: In function ‘int main()’:
main.cpp:5: error: ‘qVersion’ was not declared in this scope
Vielen Dank!

Verfasst: 3. März 2007 11:09
von BartSimpson
Ich würde die Datei #include <QCoreApplication> nehmen.
Dazu muste aber die Header von Qt4 installiert haben, was bei jeder Linux Ausgabe etwas anders geht.

Verfasst: 3. März 2007 17:42
von pjotr
hallo
ich bring das aber nicht mit gcc zum kompilieren das qmake bindet ja eigenes zeugs ein - wie bind ich die library ein?
thx

Verfasst: 3. März 2007 17:47
von Christian81
Indem man entweder qmake nimmt oder sich mit den gcc-Kommandozeilenparameter beschäftigt. Dabei kann das von qmake erzeugte Makefile helfen.

Verfasst: 3. März 2007 19:38
von pjotr
kannst du mir bitte helfen? wie das nru mit gcc geht ohne dem makefile?
thx

Verfasst: 7. März 2007 00:43
von patrik08
pjotr hat geschrieben:kannst du mir bitte helfen? wie das nru mit gcc geht ohne dem makefile?
thx
Ich denke das geht mit einem einfachen

system("qmake -v") und das resultat im stdin oder wie es auch heist raus splitten....