Как я могу обновить предварительный просмотр Ubuntu SDK с Qt 5 Beta PPA до Qt 5 Release PPA

9

Когда 2 января было объявлено о предварительном просмотре Ubuntu SDK , он был основан на бета-версии Qt 5 (поскольку Qt 5 еще не был выпущен и упакован для Ubuntu). В какой-то момент выпуск Qt 5 был упакован на отдельном PPA, а Ubuntu SDK перенесен в соответствии с содержимым этого PPA.

Новые установки работают нормально, как описано в инструкциях по установке Ubuntu SDK , но я хотел бы знать, как те из нас, кто установил его в день выпуска 2-го, могут перейти на последнюю версию SDK, поскольку для изменения PPA требуется ручное обновление.

Похоже, это связано с сообщениями людей, которые получают "error importing Ubuntu.Components"сообщение при обновлении SDK.

Дэвид Планелла
источник

Ответы:

12

Во время перехода с Qt 5 Beta на Qt 5 Release упаковка значительно изменилась. Это означает, что обновление SDK не является такой простой задачей, как sudo apt-get upgrade, и необходимо выполнить несколько шагов вручную.

Миграция: из Qt 5 Beta 1 в Qt 5.0

  1. Открыть ~/.bashrcфайл

    $ gedit ~/.bashrc

  2. Удалить 'export PATH=/opt/qt5/bin:$PATH'строку из ~/.bashrcфайла

  3. Временно удалите Qt Creator

    $ sudo apt-get remove qtcreator qt4-qmlviewer

  4. Очистить Qt 5 Beta 1 PPA

    $ sudo apt-get install ppa-purge

    $ sudo ppa-purge ppa:canonical-qt5-edgers/qt5-beta1

  5. Установите предварительный просмотр Ubuntu SDK

    $ sudo add-apt-repository ppa:ubuntu-sdk-team/ppa && sudo add-apt-repository ppa:canonical-qt5-edgers/qt5-proper && sudo apt-get update && sudo apt-get install ubuntu-sdk notepad-qml

  6. Проверьте, что приложение Component Showcase может быть выполнено:

    $ qmlscene /usr/lib/qt-components-ubuntu/demos/ComponentShowcase.qml

Дэвид Планелла
источник
Я выполнил описанные выше шаги и теперь получаю следующие ошибки при выполнении демонстрации ComponentShowcase: ... модуль "Ubuntu.Components" не установлен ... модуль "QtQuick" не установлен ...
Phidelux
Похоже, что это была ошибка, которая была исправлена ​​последним обновлением PPA: canonical-qt5-edgers / qt5-Proper PPA.
Phidelux
Я получаю ту же проблему, что и Avedo, но, похоже, она не устраняется при обновлении. :(
sil
3

В случае, если шаг 4. не удаляет все пакеты из PPA-пакета qt5-beta1, линия помогла мне очистить следующее:

$ grep ^Package: /var/lib/apt/lists/ppa.launchpad.net*sdk*Packages /var/lib/apt/lists/ppa.launchpad.net*qt5-beta1*Packages |awk '{print $2}'|xargs sudo apt-get -y remove

Вы можете выполнить ту же команду и заменить «apt-get -y remove» на «sudo dpkg --purge», чтобы очистить возможные остатки после apt-get.

Золтан Балог
источник
2

@sil: sudo apt-get install qt-components-ubuntuустановит недостающие компоненты.

Ура,

Хьюго Лима
источник
0

В случае, если вам не повезло (как и мне), найти после установки Ubuntu SDK, что:

  • в нем отсутствует плагин SQLITE Qt (препятствующий запуску примера Notepad QML)
  • в нем отсутствует плагин LocalStorage QML (тот же эффект, что и выше)
  • В Qt Creator, установленном с SDK, отсутствует помощь помощника
  • ваша стандартная (не установлена ​​в /optили ~/) среда разработки Qt4 разрушена (хотя они предупреждали вас, когда вы добавили PPA)

Вы можете уйти, установив Qt5.0.0 (не 5.0.1) через ( .run файл ), а затем скопировав содержимое /usr/lib/i386-linux-gnu/qt5/qml/в /home/your-name-here/Qt5.0.0/5.0.0/gcc/qml.

После этого вы сможете работать с вашими проектами Ubuntu (запускать из QML или через оболочку C ++) из Qt Creator в комплекте с Qt, который вы установили из файла запуска (не будет поддержки контента для элементов Ubuntu QML, хоть).

Я предполагаю, что установка путей (LD_LIBRARY_PATH и др.) Должным образом позволит запускать скомпилированные приложения из командной строки, но Хавер не пробовал этого, так как Qt5, установленный с Ubuntu SDK, теперь всегда на моем пути, и я Линукс нуб :)

Если вы знаете, как получить содержимое /usr/lib/i386-linux-gnu/qt5/qml/без фактической установки компонентов, обновите этот ответ.

Надеюсь, это кому-нибудь пригодится.

mlvljr
источник
1
Превью SDK продолжает улучшаться большими темпами, поэтому, если вы обнаружите какие-либо проблемы, пожалуйста, сообщите о них на bugs.launchpad.net/ubuntu-ui-toolkit/+filebug - конкретная проблема, о которой вы упоминаете, - это ошибка ( bugs.launchpad) .net / ubuntu-ui-toolkit / + bug / 1119730 ), который можно обойти, просто установив недостающие пакеты вручную (например, sudo apt-get install qtdeclarative5-localstorage-plugin)
David Planella
И вообще, я всегда рекомендую устанавливать упакованные версии программного обеспечения, что избавит вас от необходимости иметь дело с такими вещами, как LD_LIBRARY_PATH(или даже знать, что это значит). И вы получаете автоматическое обновление программного обеспечения! :)
Дэвид Планелла
@DavidPlanella хорошо, большое спасибо за подсказки. Я бы все же предпочел, чтобы фреймворки устанавливались вручную, чтобы разделить каталоги (может быть, где-то во мне есть парень из Slackware, кто знает? :)
mlvljr
2
... и sudo apt-get install libqt5sql5-sqliteисправляет вторую проблему.
mlvljr
0

У меня была проблема с LocalStorage, но затем я установил qtdeclarative5-localstorage-plugin, как сказал Дэвид Планелла. После этого я получил ошибку, что у меня не установлен LocalStorage в сети

import LocalStorage 2.0

а потом я изменил его на

import QtQuick.LocalStorage 2.0

и это работает сейчас.

Marin
источник