Läuft Qt 4.7 Anwendung in Ubuntu 10.04 Lucid Lynx
Arbeite ich an einem cross-Plattform-Anwendung, und bin mit dem aktuellen Qt-Bibliotheken der version 4.7. Das problem ist, dass der Benutzer versucht, führen Sie es auf Ubuntu 10.04 Lucid Lynx, und es stürzte ab mit undefined symbol: _ZN9QListData11detach_growEPii
. Ubuntu 10.04 hat Qt4.6.3 und es scheint das problem zu sein.
Allerdings scheint es, dass Ubuntu 10.04 nicht unterstützt 4.7 - nur Ubuntu 10.10 funktioniert und der Benutzer nicht will, um die Aktualisierung seiner linux-distribution als seine Langfristige Unterstützung. Was sind meine Möglichkeiten in diesem Fall? Der Benutzer könnte möglicherweise herunterladen 4.7 framework und kompilieren, dass auf seinem PC, aber das würde bedeuten, dass jedes ubuntu 10.04 Benutzer haben würde, dies zu tun. Alternativ könnte ich machen, extra builds mit Hilfe von Qt 4.6, aber ich kann nicht finden, diese älteren Bibliotheken.
Irgendwelche Vorschläge? Gibt es irgendwelche flags kompilieren würde, dass es kompatibel mit 4.6? Könnte das ein bug?
Dank!
EDIT: ich landete, schickte ihm meine Qt .also Dateien, und es funktionierte. Aber jeder Antwort hier, war richtig und angemessen - ich wünschte, ich könnte Sie akzeptieren alle.
InformationsquelleAutor Alexander Kondratskiy | 2011-02-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Abgesehen von der Vernetzung statisch gegen Qt, können Sie auch einfach verteilen Sie Ihre Qt-DLLs/so-Dateien zusammen mit Ihrer ausführbaren Datei. Die Anweisung auf der Qt-Seite Bereitstellung ist klar http://doc.qt.io/archives/qt-4.7/deployment-x11.html
Dies ist, was ich am Ende machen, und es funktionierte! Es gilt eventuell nicht für alle Fälle, so wie Johnny gesagt hat, aber für diesen Fall hatte ich Glück, dass alle anderen Abhängigkeiten abgestimmt auf unsere Maschinen.
Wenn Sie Schwierigkeiten haben, mit ./konfigurieren unter Ubuntu 10.04 stellen Sie sicher, dass die "libxext-dev' - Paket installiert erste. Dann sollte es einfach sein, Segeln,...
InformationsquelleAutor Dat Chu
Siehe letzten post
http://ubuntuforums.org/showthread.php?t=1552263
Müssen Sie fügen Sie diese an Ihre repository-Quellen:
Danke für die Erklärung Xavier!
Der Benutzer hat nicht geschafft, den backport, als er fragte "unterzeichnet Zeug" nur. Ich landete senden ihn meine .also-Dateien. Danke!
Mit diesem Befehl wird das repository korrekt mit Taste für "unterzeichnet Zeug":
sudo apt-add-repository ppa:kubuntu-ppa/backports
InformationsquelleAutor Xavier
Im Gegenteil, er braucht QT 4.6.3. Ich nehme an, er ist am 10.10 muss aber der Qt vom 10.04. Dies erfordert
nun können Sie
bauen die lucid-version (hinzufügen von qt-Pakete, wie benötigt).
Ps. Sie sind auf der falschen Seite, das ist mehr wie unix.* oder superuser.
Der Benutzer könnte möglicherweise herunterladen 4.7 framework und kompilieren, dass auf seinem PC, aber das würde bedeuten, dass jedes ubuntu 10.04 Benutzer haben würde, dies zu tun. Alternativ könnte ich machen, extra builds mit Hilfe von Qt 4.6, aber ich kann nicht finden, diese älteren Bibliotheken.<= ich beantwortete diese Frage, wie zu finden, 4.6.
Oh, tut mir Leid, dass ich dich missverstanden. Ich nahm an, indem "er" Sie wurden unter Bezugnahme auf die Benutzer, nicht mich. Sache ist ich bin nicht auf Ubuntu, bin ich auf CentOS (server in Arbeit), das ist eine andere Geschichte.
InformationsquelleAutor chx
Außerdem können Sie Ihre app aufbauen statisch gegen die Qt-Bibliotheken. Sehen http://doc.qt.io/archives/qt-4.7/deployment-x11.html#static-linking
So werden Sie in der Lage, verteilen Sie Ihre app (Ubuntu 9./10.) ohne Installation von Qt-SDK auf den Zielcomputern.
InformationsquelleAutor Johnny