I controlli rapidi Qt sono disponibili su Ubuntu 13.10?


8

Stavo cercando di fare lo sviluppo dell'interfaccia utente in QML e voglio davvero che appaia nativo. Ho trovato QtQuick.Controls ( http://qt-project.org/doc/qt-5.1/qtquickcontrols/qtquickcontrols-index.html ), ma quando provo a fare una semplice applicazione, mi dice che QtQuick.Controls non è ' t installato.

main.qml:

import QtQuick 2.1
import QtQuick.Controls 1.0

Rectangle {
    height: 200
    width: 200
}

terminale:

$ qmlscene main.qml
file:///tmp/main.qml:2 module "QtQuick.Controls" is not installed

Inoltre, ho scaricato il sorgente da https://qt.gitorious.org/qt/qtquickcontrols/source/stable , eseguito qmake && make, ma questo ha restituito il seguente output:

cd src/ && ( test -e Makefile || /usr/lib/i386-linux-gnu/qt5/bin/qmake /tmp/qtquickcontrols/src/src.pro -o Makefile ) && make -f Makefile 
make[1]: Går til katalog '/tmp/qtquickcontrols/src'
cd controls/ && ( test -e Makefile || /usr/lib/i386-linux-gnu/qt5/bin/qmake /tmp/qtquickcontrols/src/controls/controls.pro -o Makefile ) && make -f Makefile 
make[2]: Går til katalog '/tmp/qtquickcontrols/src/controls'
g++ -c -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -O2 -fvisibility=hidden -fvisibility-inlines-hidden -std=c++0x -fno-exceptions -Wall -W -D_REENTRANT -fPIC -DQT_NO_XKB -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_PLUGIN -DQT_QUICK_LIB -DQT_QML_LIB -DQT_WIDGETS_LIB -DQT_NETWORK_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/share/qt5/mkspecs/linux-g++ -I. -I/usr/include/qt5 -I/usr/include/qt5/QtQuick -I/usr/include/qt5/QtQml -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtGui -I/usr/include/qt5/QtGui/5.1.1 -I/usr/include/qt5/QtGui/5.1.1/QtGui -I/usr/include/qt5/QtCore -I/usr/include/qt5/QtCore/5.1.1 -I/usr/include/qt5/QtCore/5.1.1/QtCore -I.moc/release-shared -o .obj/release-shared/qquickaction.o qquickaction.cpp
qquickaction.cpp:49:39: fatal error: private/qguiapplication_p.h: No such file or directory
 #include <private/qguiapplication_p.h>
                                       ^

C'è qualche PPA che potrei usare o devo aspettare che Trusty esca prima di poter usare i controlli nativi da Qt? Saluti

Risposte:


6

I controlli rapidi Qt sono disponibili da Qt 5.1 e la versione Qt 5 nei repository Ubuntu sembra essere Qt 5.0.2. Di conseguenza non è possibile utilizzare Qt Quick Controls con la versione corrente di Qt5 nei repository Ubuntu.

Se vuoi usarli, hai 3 opzioni:

  • Utilizzo dei pacchetti ufficiali di Qt Project per Linux. Puoi scaricarli qui .
  • In attesa di una versione di Ubuntu la cui versione Qt5 sarebbe almeno Qt 5.1. Trusty Tahr avrà probabilmente Qt 5.1 o Qt 5.2 nei suoi repository.
  • Se stai sviluppando qualcosa per Ubuntu, puoi utilizzare i componenti che si trovano nell'SDK di Ubuntu. Ubuntu.Components(è il loro nome) non sono i veri controlli rapidi Qt ma sono molto simili e se sai come Ubuntu.Componentsfunziona, saprai come funzionano i controlli rapidi Qt. Per ulteriori informazioni, dai un'occhiata alla pagina corrispondente su Ubuntu Developer .

Penso che sceglierò la tua prima opzione. So che ci sono Ubuntu.Components, ma sono molto orientati al tocco. Ma grazie mille per una risposta rapida e utile
LinuxStudent,

Buona scelta. I pacchetti Qt Project sono il modo migliore per ottenere l'ultima versione di Qt e Qt Creator.
air-dex,

Bene, sarebbe stato più semplice se fossero solo nei repository di Ubuntu, ma hai ragione, quasi tutto è meglio, quando arrivi dal creatore, non
finisci

@ air-dex Sto eseguendo Trusty in questo momento, ma sembra che non abbia accesso a QtQuick.Controls. Quale potrebbe essere il problema? Ho aggiunto ubuntu-sdk-team/ppae canonical-qt5-edgers/qt5-properPPA, ma nessuna gioia :(
Giona

@Jonah, hai installatoqtdeclarative5-controls-plugin
andrewsomething
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.