Tout d'abord, j'ai besoin de créer une application "hello world" à l'aide de QML & QT Creator, comme décrit ici http://developer.ubuntu.com/get-started/gomobile/
Deuxièmement, lorsque j’essayais d’installer la plate-forme QML et ses dépendances, je ne pouvais pas exécuter l’étape 2 ("Installer l’aperçu du toolkit Ubuntu QML") car j’avais une distribution (backbox) basée sur Ubuntu 12.04 mais je le résolvais en suivant les instructions de ce message: https://askubuntu.com/questions/235440/how-do-i-install-the-qml-toolkit-on-12-04
Troisièmement, lorsque j'ouvre QTCreator et que je tente d’exécuter CurrencyConverter (application helloWorld), le programme ne trouve pas les packages suivants:
import Ubuntu.Components 0.1
Que puis-je faire pour exécuter l'application?
merci d'avance.
import QtQuick 2.0
import Ubuntu.Components 0.1
Rectangle {
id: root
width: units.gu(60)
height: units.gu(80)
color: "lightgray"
property real margins: units.gu(2)
property real buttonWidth: units.gu(9)
Label {
id: title
ItemStyle.class: "title"
text: i18n.tr("Currency Converter")
height: contentHeight + root.margins
anchors {
left: parent.left
right: parent.right
top: parent.top
}
}
}
J'ai trouvé la solution au moins pour Ubuntu 12.04. Je devais aller sur le site officiel http://qt-project.org/downloads#qt-creator et télécharger le dernier paquet Qt, Qt 5.0.0.
* Remarque : Ubuntu 12.04 n'inclut pas la dernière version de Qt, vous devez donc le télécharger manuellement.
* Remarque : Avant l'installation, j'ai supprimé la version précédente de QtCreator (2.5.0).
Tout ce que vous avez à faire pour installer le paquet Qt5 est:
chmod 755 qt-linux-opensource-5.0.0-x86_64-offline.run
Ensuite, exécutez simplement le package et exécutez le programme d'installation avec les paramètres par défaut.
./qt-linux-opensource-5.0.0-x86_64-offline.run
Il devrait maintenant exister /opt/qt5/imports/Ubuntu/Components
chemin, avec toutes les bibliothèques!
Après cela, j'ai suivi les instructions du CurrencyConverter
* Remarque cette ligne: import Ubuntu.Components 0.1
est toujours mise en surbrillance avec une ligne rouge mais le programme s'exécute normalement en choisissant Tools > External > Qt Quick > Preview (qmlviewer)
(grâce à @David Planella)
Vous pouvez réellement aller dans les options -> build and run -> qt versions (j'ai la version polonaise alors je devais la traduire en anglais - désolé si les noms sont légèrement différents). Ensuite, vous ajoutez la dernière version de qt
que vous avez déjà installée - elle se trouve dans /opt/qt5/bin
.
Si QT5 est correctement installé et que import Ubuntu.Components 0.1
est toujours en surbrillance, procédez comme suit:
importPaths: [ "/opt/qt5/imports" ]
avant la dernière fermeture: }
... et le problème devrait disparaître.
Vous allez probablement vouloir exécuter/créer toutes les démos Qt en ouvrant les fichiers .pro pour les exemples spécifiques.
chown -R yourusername /opt/qt5/examples/
Quand je suis allé construire l'exemple opengl/textures en ouvrant le fichier textures.pro dans qtcreator, il a automatiquement configuré le projet MAIS il désignait QT4 par défaut. J'ai eu une erreur étrange qui disait qu'il ne pouvait pas trouver QtWidgets quand j'essayais de construire en utilisant qt4. Avec Qt5 comme outil de compilation, le problème a disparu.
ASSUREZ-VOUS DE POINT SUR QT5 en tant que projet construit pour le débogage/la publication car ce n'est pas la valeur par défaut dans qtcreator. Sinon, vous obtiendrez des erreurs étranges lors de la construction. Ce problème est facile à repérer dans la sortie de la compilation, ce qui devrait indiquer les chemins qt5 include et qt5 libs.
2:58:51: Running steps for project textures...
12:58:51: Starting: "/usr/bin/make" clean -w
make: Entering directory `/opt/qt5/examples/qtbase/opengl/textures-build-Desktop Release'
rm -f qrc_textures.cpp
rm -f moc_glwidget.cpp moc_window.cpp
rm -f glwidget.o main.o window.o qrc_textures.o moc_glwidget.o moc_window.o
rm -f *~ core *.core
make: Leaving directory `/opt/qt5/examples/qtbase/opengl/textures-build-Desktop-Release'
12:58:52: The process "/usr/bin/make" exited normally.
12:58:52: Configuration unchanged, skipping qmake step.
12:58:52: Starting: "/usr/bin/make" -w
make: Entering directory `/opt/qt5/examples/qtbase/opengl/textures-build-Desktop-Release'
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. -o glwidget.o ../textures/glwidget.cpp
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. -o main.o ../textures/main.cpp
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. -o window.o ../textures/window.cpp
/opt/qt5/bin/rcc -name textures ../textures/textures.qrc -o qrc_textures.cpp
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. -o qrc_textures.o qrc_textures.cpp
/opt/qt5/bin/moc -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. ../textures/glwidget.h -o moc_glwidget.cpp
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. -o moc_glwidget.o moc_glwidget.cpp
/opt/qt5/bin/moc -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. ../textures/window.h -o moc_window.cpp
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. -o moc_window.o moc_window.cpp
g++ -m64 -Wl,-O1 -Wl,-rpath,/opt/qt5/lib -o textures glwidget.o main.o window.o qrc_textures.o moc_glwidget.o moc_window.o -L/usr/X11R6/lib64 -L/opt/qt5/lib -lQtOpenGL -lQtWidgets -lQtGui -lQtCore -lGL -lpthread
make: Leaving directory `/opt/qt5/examples/qtbase/opengl/textures-build-Desktop-Release'
12:58:57: The process "/usr/bin/make" exited normally.