Установка MeeGo SDK

Установка MeeGo SDK 1.0 вручную на Ubuntu 10.04

  1. Для MeeGo Touch необходим Qt версии 4.7, если все ещё не установлен, устанавливаем (скачать: qt.nokia.com/downloads).
  2. Прописать переменные среды:

    $ export QTDIR=/path_to_qtsdk4.7/qt/ 
    $ export PATH=${QTDIR}/bin:${PATH}
  3. Скачать и установить Touch Theme (для запуска приложений на настольной машине):
    1. Клонируем из репозитория:
    2. $ git clone gitorious.org/meegotouch/meegotouch-theme.git


    3. Собираем:
    4. $ qmake
    5. Устанавливаем:
    6. $ sudo make install
  4. Установить необходимые пакеты:

    $ sudo apt-get install build-essential libgl1-mesa-dev libglu1-mesa-dev libxdamage-dev
  5. Скачать и установить MeeGo SDK 1.0
    1. Клонируем из репозитория:
    2. $ git clone gitorious.org/meegotouch/libmeegotouch.git


    3. Конфигурируем, собираем и устанавливаем:
    4. $ ./configure && make && sudo make install


Возможные проблемы при установке (step 4.2)



При сборке возникли ошибки в следующих местах:

File: ../libmeegotouch/src/corelib/scene/msceneeventeater.cpp
  39:	setFlag(QGraphicsItem::ItemStopsClickFocusPropagation);
File: ../libmeegotouch/src/corelib/widgets/mscenewindow.cpp
 105:	setFlag(QGraphicsItem::ItemStopsClickFocusPropagation); 
 121:	setFlag(QGraphicsItem::ItemStopsClickFocusPropagation); 
File: ../libmeegotouch/src/views/mlabelview_simplce.cpp 
 244:	staticText.setTextOption(viewPrivate->textOptions); 
 370:	staticText2.setTextOption(staticText.textOption());





Первая ошибка заключается в том, что свойство ItemStopsClickFocusPropagation не является членом класса QGraphicsItem и вторая похожая ошибка. Я просто закомментировал эти строки на время.



За более подробной информацией обращайтесь по ссылке [1].


Установка MeeGo SDK 1.1 из репозитория на Ubuntu 10.04

  1. Настраиваем менеджер пакетов:
    1. Добавить следующую строчку в /etc/apt/sources.list.d/meego-sdk.list
      deb <a href="http://repo.meego.com/MeeGo/sdk/host/repos/ubuntu/10.04/">http://repo.meego.com/MeeGo/sdk/host/repos/ubuntu/10.04/</a> /
    2. Добавить ключ репозитория:

      $ gpg –keyserver pgpkeys.mit.edu –recv 0BC7BEC479FC1F8A 
      $ gpg –export –armor 0BC7BEC479FC1F8A | sudo apt-key add - 
    3. Обновить базу данных менеджера пакетов:

      $ sudo apt-get update
    4. Чтобы проверить, что MeeGo репозиторий был корректно добавлен, запустите следующую команду. Будут выведены детали о пакете MADDE.

      $ apt-cache policy madde
  2. Установить MeeGo SDK:

    $ sudo apt-get install meego-sdk
  3. Установить MeeGo объект (target):
    1. Создать MeeGo обьект, используя MADDE (targets: ARM (N900): meego-core-armv7l-1.1, Aava: meego-handset-ia32-1.1, meego-netbook-ia32-1.1):
      $ sudo mad-admin create -f <target>
    2. Чтобы проверить, что объекты были установлен корректно, выполните следующие команды:

      $ mad -t <target> pscreate -t qt-simple qthello 
      $ cd qthello 
      mad -t <target> qmake 
      mad -t <target> make
    3. Проверяем, что приложение qt-simple создан для правильного объекта, выполним:

      $ file build/qthello


  4. Установить MeeGo runtime:
    1. Посмотреть список доступных runtime:
      $ mad-admin list runtimes

    2. Установить:

      $ sudo mad-admin create -f -e <runtime> 
  5. Использование MeeGo runtime:
    1. Запуск:
      $ sudo mad remote -r meego-handset-ia32-qemu-1.1.20101031.2201-sda-runtime poweron 
      $ sudo mad remote -r meego-netbook-ia32-qemu-1.1.20101031.2037-sda-runtime poweron 

    2. Запуск без графики:

      $ QEMU_NOGRAPHIC=yes mad remote -r meego-handset-ia32-qemu-1.1.20101031.2201-sda-runtime poweron
    3. Выключение:
      $ sudo mad remote -r meego-netbook-ia32-qemu-1.1.20101031.2037-sda-runtime poweroff
    4. Подключение по SSH:

      $ ssh meego@127.0.0.1 -p 6666 


      • User: meego, password: meego
      • User: root, password: meego



За более подробной информацией обращайтесь по ссылкам [2] и [3].


Известные проблемы при установке и работе



SDK: [5]

  1. Ошибки при скачивание и распаковки образа.
  2. Создание и тестирование объекта (target) с MADDE.
  3. Не отображается установленный runtime при выполнении *mad-admin list runtimes*, после его установки [Ubuntu 10.04].
  4. Ошибка “error while loading shared libraries: libcurl-gnutls.so.4: cannot open shared object file: No such file or directory”, при том что данная библиотека присутствует [Ubuntu 10.04].



Оборудование:

  1. Не поддерживаемое оборудование (процессор, видеокарта).
  2. Нет поддержки *виртуализации (VT)* процессора и аппаратного ускорения графики [4].



Эмулятор QEMU и Xephyr: [5]

  1. Ошибка при запуске “Could not access KVM kernel module: No such file or directory failed to initialize KVM” [Ubuntu 9.04]. [5]
  2. Эмулятор QEMU запускается с черным окном, интерфейс MeeGo не появляется.
  3. Эмулятор QEMU показывает только курсор X.
  4. Медленная работа MeeGo OS на эмуляторе QEMU.
  5. При запуске эмулятора ничего не происходит, невозможно зайти по ssh на образ [Ubuntu 10.04].
  6. Runtime на эмуляторе QEMU запускается, но не работает ssh.
  7. Не удается подключить приложения Xephyr к Xserver [Ubuntu 10.10].
  8. Эмулятор Xephyr не показывает UX (не загружает) Netbook Image. [6]



Главная причина всех ошибок заключается в том, что нет поддержки виртуализации и аппаратного ускорения графики, а также идет привязка к конкретному железу! Решение почти всех данных проблем можно посмотреть по ссылкам [4] и [5], а также следить за багтрекером [7].


Список используемых источников

  1. http://apidocs.meego.com/1.1/platform/html/index.html
  2. http://wiki.meego.com/Getting_started_with_the_MeeGo_SDK_for_Linux
  3. http://wiki.meego.com/SDK/Docs/1.1/Configuring_QEMU_runtimes
  4. http://wiki.meego.com/SDK/Docs/1.1/MeeGo_SDK_Graphics_Acceleration
  5. http://wiki.meego.com/MeeGo_SDK_Troubleshooting
  6. http://bugs.meego.com/show_bug.cgi?id=8666
  7. http://bugs.meego.com