Seite 1 von 1
Versionsnummer einpflegen
Verfasst: 17. April 2010 17:00
von anno1988
Hallo zusammen.
Wie kann ich denn im Qt Creator einer Versionsnummer eintragen, damit ich später beim compilieren immer eine andere angeben kann, falls sich mal was verändert hat.
Diese Versionsnummer will ich dann in der Oberfläche verwenden und auch anzeigen, dass man weiß welche es ist.
Oder soll ich es direkt irgendwo im Code eintragen? Was ist denn besser?
gruß
Verfasst: 18. April 2010 13:14
von anno1988
ich ahbe mal versucht in der .pro-datei des Projektes eine "VERION" variable hinzuzuschreiben.
Wenn ich diese Variable dann aber in einer Klasse verwenden wollte, wurde sie nicht gefunden?
Wo muss ich denn eine Varialbe des Präprozessors ablegen, damit sie global verändert und im programm genutzt werden kann?
Verfasst: 18. April 2010 13:53
von Christian81
Verfasst: 18. April 2010 16:21
von anno1988
Also diesen Bereich hab eich gefunden:
http://qt.nokia.com/doc/4.6/qmake-varia ... ml#version
Allerdings funktioniert das nicht, wenn ich die Variable in meine "<projekt>.pro" Datei reinschreibe.
Diese wird dann in den source dateien nie gefunden.
Verfasst: 18. April 2010 18:52
von Christian81
Das sit ja auch die Versionierung der so-Dateien und definiert keine Präprozessor-Variable...
Verfasst: 21. April 2010 09:37
von anno1988
kann ich so etwas überhaupt einstellen, dass ich dem quellcode meine versionsnummer beim compilieren übergebe?
Verfasst: 21. April 2010 09:59
von Christian81
Ich habe Dir doch schon gezeigt wie man per DEFINES Präprozessor-Defines mit übergeben kann... was noch?
Verfasst: 21. April 2010 10:00
von franzf
Ja, und der Link wurde dir oben gepostet - mit "DEFINES".
Ich hab das bisher nur mit cmake gemacht, denke aber im .pro wird das nicht anders auschauen.
Im Code steht dir das Symbol "MY_VERSION" dann mit der Versionsnummer zur Verfügung.
Verfasst: 21. April 2010 10:25
von anno1988
danke für die schnelle hilfe.
Verfasst: 21. April 2010 19:20
von anno1988
franzf hat geschrieben:Ja, und der Link wurde dir oben gepostet - mit "DEFINES".
Ich hab das bisher nur mit cmake gemacht, denke aber im .pro wird das nicht anders auschauen.
Im Code steht dir das Symbol "MY_VERSION" dann mit der Versionsnummer zur Verfügung.
ich habe das mal ausprobiert. allerdings funktioniert das nciht so ganz.
Dann erhalte ich folgende Fehlermeldung:
Code: Alles auswählen
dialog.cpp:10: error: no matching function for call to 'QLabel::setText(double)'
Irgendwie wird das nciht richtig erkannt, dass das ein String sein soll und keine zahl
Verfasst: 21. April 2010 20:07
von Christian81
DEFINES += VERSION="12345"
ggf. noch etwas mehr quoten.
Verfasst: 21. April 2010 20:19
von anno1988
also kann ich da dann nur eine Zahl angeben?
Verfasst: 22. April 2010 06:30
von Christian81
Nein - siehe meinen Post. Und selbst wenn - wo wäre das Problem?
Verfasst: 22. April 2010 16:19
von anno1988
Ich wollte einem label die versionsnummer übergeben. Aber das funktioniert ja nicht, da das qmake bei diesen defines nur mit zahlen umgehen kann.
klar, wenn ich intern etwas prüfen muss, dann verwende ich natürlich eine zahl. So hätte ich dann aber alles zentral liegen, wo ich die verionsnummer ändern kann.