Доступны ли Qt Quick Control в Ubuntu 13.10?


8

Я хотел заняться разработкой пользовательского интерфейса в QML и очень хочу, чтобы он выглядел нативно. Я нашел QtQuick.Controls ( http://qt-project.org/doc/qt-5.1/qtquickcontrols/qtquickcontrols-index.html ), но когда я пытаюсь создать простое приложение, он говорит мне, что QtQuick.Controls не является т установлен.

main.qml:

import QtQuick 2.1
import QtQuick.Controls 1.0

Rectangle {
    height: 200
    width: 200
}

Терминал:

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

Кроме того, я скачал исходник с https://qt.gitorious.org/qt/qtquickcontrols/source/stable , запустил qmake && make, но это вернуло следующий вывод:

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

Есть ли какой-нибудь PPA, который я мог бы использовать, или мне нужно ждать выхода Trusty, прежде чем я смогу использовать нативные элементы управления из Qt? С уважением

Ответы:


6

Быстрые элементы управления Qt доступны начиная с версии Qt 5.1, а версия Qt 5 в репозиториях Ubuntu выглядит как Qt 5.0.2. Следовательно, вы не можете использовать Qt Quick Control с текущей версией Qt5 в репозиториях Ubuntu.

Если вы хотите использовать их, у вас есть 3 варианта:

  • Использование официальных пакетов Qt Project для Linux. Вы можете скачать их здесь .
  • Ожидание версии Ubuntu, чья версия Qt5 будет как минимум Qt 5.1. У Trusty Tahr скорее всего будет Qt 5.1 или Qt 5.2 в своих репозиториях.
  • Если вы разрабатываете что-то для Ubuntu, вы можете использовать компоненты, которые есть в Ubuntu SDK. Ubuntu.Components(это их имя) не являются настоящими Qt Quick Control, но они очень похожи, и если вы знаете, как Ubuntu.Componentsработать, вы узнаете, как работают Qt Quick Control. За дополнительной информацией обращайтесь на соответствующую страницу на Ubuntu Developer .

Я думаю, я выберу ваш первый вариант. Я знаю, что есть компоненты Ubuntu. Но они очень ориентированы на прикосновения. Но большое спасибо за быстрый и полезный ответ
LinuxStudent

Хороший выбор. Пакеты Qt Project - лучший способ получить последнюю версию Qt и Qt Creator.
air-dex

Ну, было бы проще, если бы они были только в репозиториях Ubuntu, но вы правы, почти все лучше, когда вы получаете от создателя, а не от какого-то стороннего дистрибьютора
LinuxStudent

@ air-dex Сейчас я работаю с Trusty, но, похоже, у меня нет доступа к нему QtQuick.Controls. В чем может быть проблема? Я добавил ubuntu-sdk-team/ppaи canonical-qt5-edgers/qt5-properPPA, но не радость :(
Иона

@Jonah, ты установилqtdeclarative5-controls-plugin
andrewsomething
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.