Os Qt Quick Controls estão disponíveis no Ubuntu 13.10?


8

Eu estava procurando fazer o desenvolvimento da interface do usuário na QML e realmente quero que ela pareça nativa. Encontrei o QtQuick.Controls ( http://qt-project.org/doc/qt-5.1/qtquickcontrols/qtquickcontrols-index.html ), mas quando tento fazer um aplicativo simples, ele diz que o QtQuick.Controls não é ' t instalado.

main.qml:

import QtQuick 2.1
import QtQuick.Controls 1.0

Rectangle {
    height: 200
    width: 200
}

terminal:

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

Além disso, baixei a fonte de https://qt.gitorious.org/qt/qtquickcontrols/source/stable , executei qmake && make, mas isso retornou a seguinte saída:

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>
                                       ^

Existe algum PPA que eu possa usar ou tenho que esperar o Trusty sair antes de poder usar os controles nativos do Qt? Saudações

Respostas:


6

O Qt Quick Controls está disponível desde o Qt 5.1 e a versão Qt 5 nos repositórios do Ubuntu parece ser o Qt 5.0.2. Consequentemente, você não pode usar o Qt Quick Controls com a versão atual do Qt5 nos repositórios do Ubuntu.

Se você quiser usá-los, você tem 3 opções:

  • Usando pacotes oficiais do Qt Project para Linux. Você pode baixá-los aqui .
  • Esperando uma versão do Ubuntu cuja versão Qt5 seria pelo menos Qt 5.1. O Trusty Tahr provavelmente terá Qt 5.1 ou 5.2 em seus repositórios.
  • Se você estiver desenvolvendo algo para o Ubuntu, poderá usar os componentes que estão no SDK do Ubuntu. Ubuntu.Components(é o nome deles) não são os verdadeiros Qt Quick Controls, mas são muito semelhantes e, se você souber como Ubuntu.Componentsfunciona, saberá como funcionam os Qt Quick Controls. Para mais informações, consulte a página correspondente no Ubuntu Developer .

Eu acho que vou escolher sua primeira opção. Eu sei que existem os Ubuntu.Components, mas eles são muito orientados ao toque. Mas muito obrigado por uma resposta rápida e útil
LinuxStudent

Boa escolha. Os pacotes do Qt Project são a melhor maneira de obter a versão mais recente do Qt e Qt Creator.
ar-dex

Bem, teria sido mais fácil se eles eram apenas nos repositórios do Ubuntu, mas você está certo, quase tudo é melhor, quando você começa a partir do criador, acabam não de algum distribuidor de terceiros
LinuxStudent

@ air-dex Estou executando o Trusty agora, mas parece que não tenho acesso QtQuick.Controls. Qual pode ser o problema? Eu adicionei ubuntu-sdk-team/ppae canonical-qt5-edgers/qt5-properPPAs, mas não há alegria :(
Jonah

@Jonah, você instalouqtdeclarative5-controls-plugin
andrewsomething #
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.