Hallo,
wenn ich jetzt ein Programm geschirieben habe, würde ich dann gerne wissen, welches QT dafür benötigt wird. Ich könnt jetzt den ganzen Code von Hand durchgehen und in den Manuals schauen, ab wann die Funktionen eingebaut wurden, um so die Mindestanforderung zu bekommen.
Geht das nicht auch mit irgendeinem Programm??
Danke,
Lykurg
Welches Version von QT braucht meine Anwendung?
Hi,
ich würde sagen, dass wenn Dein Programm mit der bei Dir installierten Version von Qt kompiliert wurde, sollte auf dem System, wo es laufen soll auch keine frühere Version installiert sein. Im Grunde kannst Du in keine Richtungen volle Kompatibilität garantieren. Z.B. werden einige Anwendungen, die jetzt mit Qt 3 kompiliert werden aufgrund der enormen Umstellungen in Qt 4 nicht mehr mit Qt 4 laufen. Andersrum laufen die Anwendungen auch nicht mehr mit Qt 2.x.
Über ein Tool, was wenigstens so grob den Rahmen aufgrund der verwendeten Funktionen angibt, in dem Kompatibilität bestehen bleiben sollte weiß ich nicht.
Alternativ sollte die Möglichkeit bestehen Qt statisch zu linken, dann ist die Anwendung zwar größer, aber dafür hast Du mit dem Thema, wer welche Version installiert hat keine Probleme mehr.
Gruß
Mike
ich würde sagen, dass wenn Dein Programm mit der bei Dir installierten Version von Qt kompiliert wurde, sollte auf dem System, wo es laufen soll auch keine frühere Version installiert sein. Im Grunde kannst Du in keine Richtungen volle Kompatibilität garantieren. Z.B. werden einige Anwendungen, die jetzt mit Qt 3 kompiliert werden aufgrund der enormen Umstellungen in Qt 4 nicht mehr mit Qt 4 laufen. Andersrum laufen die Anwendungen auch nicht mehr mit Qt 2.x.
Über ein Tool, was wenigstens so grob den Rahmen aufgrund der verwendeten Funktionen angibt, in dem Kompatibilität bestehen bleiben sollte weiß ich nicht.
Alternativ sollte die Möglichkeit bestehen Qt statisch zu linken, dann ist die Anwendung zwar größer, aber dafür hast Du mit dem Thema, wer welche Version installiert hat keine Probleme mehr.
Gruß
Mike
Was mir grad noch eingefallen ist:
Es gibt immer Änderungen (neue Features) bei Versionsprüngen von z.B. 3.1 auf 3.2, oder 3.0 auf 3.1. Bei 3.1.0 auf 3.1.1 usw. handelt es sich immer nur um Bugfixes. D.h. Du kannst im Grunde sagen: Wenn Deine Anwendung mit Qt 3.2 kompiliert wurde, läuft sie überall wo Qt 3.2.x installiert ist.
Hast Du die Anwendung mit Qt 3.2 installiert und möchtest sie auf einem System mit Qt 3.1.x oder 3.3.x laufen lassen, wirds denke ich schon schwieriger. Mit etwas Glück läufts, eventuell aber eben nicht. Das kannst Du ja dann ausprobieren, wenn Du selbst upgradest. Ansonsten eben eine neue Version rausbringen. Ich würde mich auf jeden Fall nicht darauf verlassen, dass die Anwendung mit älteren Versionen noch läuft, schließlich wurde sie ja dynamisch gelinkt, da kann imho bestimmt was schiefgehen
Gruß
Mike
Es gibt immer Änderungen (neue Features) bei Versionsprüngen von z.B. 3.1 auf 3.2, oder 3.0 auf 3.1. Bei 3.1.0 auf 3.1.1 usw. handelt es sich immer nur um Bugfixes. D.h. Du kannst im Grunde sagen: Wenn Deine Anwendung mit Qt 3.2 kompiliert wurde, läuft sie überall wo Qt 3.2.x installiert ist.
Hast Du die Anwendung mit Qt 3.2 installiert und möchtest sie auf einem System mit Qt 3.1.x oder 3.3.x laufen lassen, wirds denke ich schon schwieriger. Mit etwas Glück läufts, eventuell aber eben nicht. Das kannst Du ja dann ausprobieren, wenn Du selbst upgradest. Ansonsten eben eine neue Version rausbringen. Ich würde mich auf jeden Fall nicht darauf verlassen, dass die Anwendung mit älteren Versionen noch läuft, schließlich wurde sie ja dynamisch gelinkt, da kann imho bestimmt was schiefgehen
Gruß
Mike
Hi,
soweit ich weiß, ist dann eine Qt-Installation nicht nötig. Allerdings musst Du das Programm weiterhin für jede Plattform extra compilen und linken. Wenn Du also unter Linux eine Qt-Anwendung statisch gelinkt hast, läuft die auch weiterhin nur unter Linux, nicht z.B. unter Windows. Selbiges umgekehrt.
Selbst habe ich das statische Linken jedoch noch nicht ausprobiert. Kannst ja später posten, obs funktioniert hat
Gruß
Mike
soweit ich weiß, ist dann eine Qt-Installation nicht nötig. Allerdings musst Du das Programm weiterhin für jede Plattform extra compilen und linken. Wenn Du also unter Linux eine Qt-Anwendung statisch gelinkt hast, läuft die auch weiterhin nur unter Linux, nicht z.B. unter Windows. Selbiges umgekehrt.
Selbst habe ich das statische Linken jedoch noch nicht ausprobiert. Kannst ja später posten, obs funktioniert hat
Gruß
Mike
-
- Beiträge: 70
- Registriert: 11. August 2004 07:44
- Wohnort: Bergen auf Rügen
- Kontaktdaten:
Hi
Wenn du das Programm öffentlcih zur Verfügung stellen willst, soltest du immer statisch Linken. Das ist wie bei Borland C++ oder ähnlichen.
Du weißt nie ob die Bibliotheken immer vorhanden sind.
Wenn das Programm nur bei dir ist hast du dir Bibliotheken ja.
Man kann auch nach einem Update noch ältere verwenden glaub ich.
Bin mir aber nicht mehr ganz sicher.
Mfg jaegermeister
Wenn du das Programm öffentlcih zur Verfügung stellen willst, soltest du immer statisch Linken. Das ist wie bei Borland C++ oder ähnlichen.
Du weißt nie ob die Bibliotheken immer vorhanden sind.
Wenn das Programm nur bei dir ist hast du dir Bibliotheken ja.
Man kann auch nach einem Update noch ältere verwenden glaub ich.
Bin mir aber nicht mehr ganz sicher.
Mfg jaegermeister
Wie könnten ja wenn wir wollten, aber wie wollen ja nicht.