Seite 1 von 1

Qt Programm auf anderen Rechner

Verfasst: 31. Dezember 2006 20:02
von Jan
Hallo!

Ich habe ein einfaches Qt Programm geschrieben, welches ich nun gerne auch auf anderen Rechnern ausführen können möchte.

Ich entwickle auf Ubuntu 6.2/Qt 4.2 und teste das Programm auf einem Rechner mit frisch installiertem (sprich kein C++ Compiler, kein Qt....) Suse 9.3.

Ich habe mich entschieden das Programm statisch zu linken und dementsprechend Qt statisch kompiliert etc.

ldd zeigt mir nun auch keine Qt Bibliotheken mehr an.

Das Suse Linux beschwert sich nun aber über die fehlende Bibliothek libstdc++.so.6

Ich habe also in meinem .pro File folgende Zeile eingefügt:
LIBS += -L/usr/lib/ -lstdc++

Nun taucht diese Bibliothek bei dem ldd Aufruf an erster Stelle auf, aber ist nach wie vor nicht mitkompiliert...

Was genau muss ich abändern um das Qt Programm sozusagen zur Verbreitung fertigzustellen?

Vielen Dank im Voraus, Jan

Verfasst: 1. Januar 2007 14:12
von C_G
Ist bei SuSE 9.3 nicht automatisch QT mit an Bord, da es ja im Normalfall
mit KDE installiert wird?
Zu deinem Problem fällt mir auch nix ein, da bei einer statisch erstellten
bin eigentlich alles mit reinkompiliert ist.
Gruß,
Christian

Verfasst: 1. Januar 2007 14:24
von franzf
C_G hat geschrieben:Ist bei SuSE 9.3 nicht automatisch QT mit an Bord, da es ja im Normalfall mit KDE installiert wird?
Jein ;)
Wenn kde installiert ist sind auf alle Fälle die qt-libs mit an board, aber eben nur qt3! Sein Programm baut aber auf qt4 auf, was für kde3 nicht benötigt wird und damit ein optionales Paket darstellt. Wenn kde4 draußen ist, sind natürlich die qt4-libs drauf.

Grundsätzlich weiß ich nicht ob es optimal ist, ein komplett statisch gelinktes Paket auszuliefern. Was spricht denn dagegen, dein Programm auf dem Zielsystem nochmals zu übersetzen? Du benötigst dann halt auch die ganzen Dev-Pakete, was aber in den meisten Fällen nicht viel Platz braucht, da darin fast immer nur die Header-Dateien enthalten sind (ausgenommen gcc).

Grüße
Franz

Verfasst: 1. Januar 2007 21:01
von Jan
Hallo und danke für eure Antworten!

Mein Ziel ist es, ein Programm zu schreiben welches auf einem, von einem USB Stick bootenden, 50Mb Linux (DSL) läuft.

Dh. das Programm sollte nach Möglichkeit ein richtiges "Standalone" werden.

Ich suche mich schon dämlich.. eine interessante Adresse scheint mir das zu sein, aber als Anfänger steige ich noch nicht so ganz durch.

Kennt vielleicht jemand einen Workaround oder hat sonst eine Idee wie ich mein Programm portierbar bekomme?