Seite 1 von 1

QT Programme ohne QT Installation auf S60

Verfasst: 12. August 2009 16:09
von mase
Hallo!
Ich bin gerade dabei, mit QT für S60 Smartphones zu programmieren.
Ich will erreichen, dass die Prorgamme auf dem Telefon laufen, ohne
QT installieren zu müssen. Die Installation nimmt schon einige MB in
Anspruch, obwohl das Programm an sich sehr klein ist.
Gibt es die Möglichkeit, entweder die Benötigten Bibliotheken statisch
zu linken, oder nur die benötigten der Programminstallation beizulegen?
Wenn ja, wie?

Verfasst: 12. August 2009 16:14
von Mani99
Am besten im forum nach statisch linken suchen?

Verfasst: 12. August 2009 18:51
von mase
Die statische Methode will nicht funktionieren.
Kann es sein, dass statisches Kompilieren von QT für S60 nicht
möglich ist?
Ich bin nach folgender Anleitung vorgegangen:
http://lizardo.wordpress.com/2009/07/29 ... k-on-linux
Mit dynamischen Linken funktioniert es einwandfrei. Nun hab ich vor
dem Ausführen von ./install_qt_s60.sh einfach im Script ganz unten
bei configure ein -static eingefügt. Es scheint aber keinen Unterschied
zu machen. Das Kompilieren ist (wie ohne static) in 5 Minuten durch.

Ich wollt es mal so probieren, die QtCore.dll und QtGui.dll ins selbe
verzeichnis, wie die ausführbare Datei zu legen. Ich bin mir jetzt aber
nicht sicher, wie ich es in der pro angeben soll.

Ich will nur erreichen, dass die QT Libs nicht auf dem Telefon installiert
sein müssen. Es nimmt einfach zu viel Platz weg. QtCore.dll und
QtGui.dll hinzuzufügen, damit könnte ich mich noch anfreunden. Wären
dann ca. 3MB. Aber ich krieg sie einfach nicht gelinkt. Der Kompiler
läuft durch, aber auf dem Telefon läuft die Anwendung nicht.
Entweder ein "Funktion nicht unterstützt", oder einfach gar nichts.
Und am Code ansich kann es nicht liegen, es funktioniert mit
installieren Libs.

Verfasst: 12. August 2009 19:36
von mase
Ich hab jetzt folgendes zu meinem pro hinzugefügt:

Code: Alles auswählen

LIBS += -Le:\sys\bin -lQtCore -lQtGui
Die dlls werden auch in den selben Pfad, wie die exe kopiert.
Leider funktioniert es so nicht. Ausserdem, was wenn ich das
Programm nach c installiere?

Verfasst: 12. August 2009 22:23
von Mani99
Vorweg einmal (ich bin jetzt nicht so der windows kenner):

Windows sucht dll's erst unter C:\Windows\System32 und dann im verzeichnis wo die exe liegt, also reicht es beim dynamischen linken, die files im selben verzeichnis liegen zu haben.

BTW: Statisch kompilieren

Verfasst: 12. August 2009 22:34
von mase
Die Application soll ja nicht auf Windows laufen, sondern auf dem
Symbianphone.

Verfasst: 13. August 2009 08:45
von Mani99
Windows sucht erst unter C:\Windows\System32, danach im verzeichnis der exe. Linux sucht unter /usr/lib/, jetzt musst du eben rausfinden wo symbian seine libs sucht. Ich hab leider keine ahnung wie symbian aufgebaut ist!