Ja od dawna kibicuję MeeGo, aby jak najszybciej weszło i zdobyło rynek urządzeń mobilnych i multimedialnych. Głównym powodem jest to, że bardzo wygodnie pracuje mi się z biblioteką Qt, a myśl, że program, który napiszę w Linuksie będzie działał nie tylko na MS Window i Mac iOS, jak to miało miejsce dotychczas, ale również na wszystkich urządzeniach obsługujących MeeGo wydaje się naprawdę ekscytująca. Ostatnie decyzje Nokii również mnie nie wprawiły w najlepsze samopoczucie, ale już zdążyłem ochłonąć :) i wiem, że najlepszą rzeczą, którą mogę w takim momencie zrobić to promować tą platformę i zachęcać do niej innych. W związku z tym chciałbym rozpocząć serię artykułów pokazujących jak rozpocząć przygodę z tym systemem. Od razu również dodam, że do tej pory nie miałem żadnego doświadczenia z MeeGo i moje wpisy raczej będą opisywać pierwsze kroki, które sam postawiłem, a nie zaawansowane zagadnienia z punktu widzenia eksperta w tej dziedzinie.
Na początek przygotowałem mały poradnik jak zainstalować podstawowe środowisko uruchomieniowe i jak skonfigurować zestaw narzędzi, które będą niezbędne do implementacji własnych programów. Poradnik ten został przygotowany w oparciu o oficjalną dokumentację znajdująca się na Wiki projektu: http://wiki.meego.com/SDK/Docs/1.1/
Getting_started_with_the_MeeGo_SDK_for_Linux. Jest ona naprawdę dobrze przygotowana i mój opis będzie raczej jej skrótem, a nie rozwinięciem. Wszystkie instrukcje zostaną pokazane na przykladzie systemu Ubuntu w wersji 10.10.
Ustawienie repozytorium
Wielkim ułatwieniem dla osób interesujących się testowaniem i rozwojem MeeGo w Ubuntu jest przygotowane dla tej dystrybucji repozytorium, które zawiera wszystkie niezbędne narzędzia do dalszej pracy. Konfigurujemy je w sposób opisany poniżej.
Tworzymy nowy plik
sudo nano /etc/apt/sources.list.d/meego-sdk.listdo którego zapisujemy:
deb http://repo.meego.com/MeeGo/sdk/host/repos/ubuntu/10.10/ /
Pobieramy klucze do repozytorium:
gpg --keyserver pool.sks-keyservers.net --recv 0BC7BEC479FC1F8A gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add -
Aktualizujemy listę pakietów:
sudo apt-get update
Sprawdzamy poprawność repozytorium:
apt-cache policy madde
Instalacja MeeGo SDK
Aby zainstalować pakiet narzędzi MeeGoo (tzw. SDK) wystarczy wskazać do instalacji meta-pakiet meego-sdk. Dzięki temu wszystkie wymagane pakiety zostaną zainstalowane.
sudo apt-get install meego-sdk
Instalacja środowiska wdrożeniowego (Target)
Należy również zainstalować wybrane środowisko wdrożeniowe MeeGo (tzw. MeeGoo Target). W jego skład wchodzi zestaw aplikacji do kompilacji, linkowania i debugowania (tzw. MeeGoo Toolchain) oraz biblioteki systemowe.
Aby sprawdzić jakie środowiska wdrożeniowe mamy do dyspozycji wydajemy polecenie:
sudo mad-admin list
Ja wybrałem do instalacji dwa z nich:
sudo mad-admin create -f meego-netbook-ia32-1.1.2 sudo mad-admin create -f meego-handset-ia32-1.1.2
Aby przetestować działanie wybranego środowiska, warto utworzyć dla niego przykładową aplikację. Można to szybko zrobić stosując narzędzia dostępne w MeeGo SDK:
mad -t meego-netbook-ia32-1.1.2 pscreate -t qt-simple qthello
Przechodzimy do katalogu z projektem i uruchamiamy kompilację:
cd qthello mad -t meego-netbook-ia32-1.1.2 qmake mad -t meego-netbook-ia32-1.1.2 make
Sprawdzamy czy plik wykonywalny istnieje:
file build/qthello
Aplikację również możemy uruchomić wydając polecenie: build/qthello. Powinno nam się pojawić okienko programu z widocznym przyciskiem „Hello world”. Okienko należy wyłączyć zamykając program w konsoli ponieważ nie zawiera ono paska tytułowego z przyciskami sterującymi (zamknij, minimalizuj, itp.).
Instalacja i testowanie środowiska uruchomieniowego (Runtime)
Środowisko wdrożeniowe to za mało, aby wygodnie pisać i testować programy napisane dla MeeGo. Potrzebne nam jest również środowisko uruchomieniowe (ang. MeeGo Runtime), na którym będziemy mogli przetestować na żywo jak się sprawuje nasza aplikacja. Najlepiej jakbyśmy dysponowali jakimś urządzeniem, na którym jest zainstalowany MeeGo. Jeśli jednak takim nie dysponujemy możemy skorzystać z testowego środowiska przygotowanego przez twórców MeeGo w postaci maszyn wirtualnych QEMU. Oczywiście do ich działania wymagana jest sprzętowa akceleracja wirtualizacji wbudowana w procesor. W sumie nie jest to wymóg samego MeeGo, a jedynie QEMU.
Instalacja środowiska uruchomieniowego jest dobrze opisana na Wiki MeeGo, gdzie również polecam zajrzeć: http://wiki.meego.com/SDK/Docs/1.1/Configuring_QEMU_runtimes.
Aby sprawdzić jakie środowiska mamy do dyspozycji wydajemy polecenie:
mad-admin list runtimes
Ja zainstalowałem na początek dwa z nich (uwaga: każde zajmuje ok. 650MB!):
sudo mad-admin create -f -e meego-netbook-ia32-qemu-1.1.2-runtime sudo mad-admin create -f -e meego-handset-ia32-qemu-1.1.2-runtime
Po instalacji możemy już przetestować na własnym komputerze czy to naprawdę działa:
sudo mad remote -r meego-netbook-ia32-qemu-1.1.2-runtime poweron sudo mad remote -r meego-handset-ia32-qemu-1.1.2-runtime poweron
Po zakończonych testach wyłączamy wirtualną maszynę poleceniem:
sudo mad remote -r meego-netbook-ia32-qemu-1.1.2-runtime poweroff sudo mad remote -r meego-handset-ia32-qemu-1.1.2-runtime poweroff
Napotkane problemy
- Niestety przy podczas pierwszej próby włączenia dowolnego środowiska dostawałem komunikat:
Starting QEMU runtime meego-handset-ia32-w32-qemu-1.1.20101031.2201-sda-runtime This may take some time ...
i nic się więcej nie działa. Nic nie startuje. Nic nie zjada zasobów procesora. Wyszło na to, że mój procesor (AMD Phenom™ II X4 925) ma jakieś problemy ze wspomaganiem wirtualizacji sprzętowej. Jest też odpowiedni wpis na Wiki Meego, który dotyczy tego problemu i tam polecam najpierw zajrzeć: http://wiki.meego.com/SDK/Docs/1.1/MeeGo_SDK_Graphics_Acceleration. U mnie problem rozwiązał się po instalacji następujących pakietów:
sudo apt-get install qemu-kvm kvm
wydaniu polecenia:
sudo modprobe kvm_amd
i restarcie komputera. Później już wszystko ruszyło z miejsca :) - Na innym komputerze, co do którego miałem pewność, że procesor, który się w nim znajduje (Intel i3 530) powinien sobie poradzić był taki sam problem ze uruchomieniem środowiska Runtime. Rozwiązanie było podobne jak poprzednio. Tutaj wystarczyło jedynie wpisać:
sudo modprobe kvm_intel
- Niestety na komputerze z AMD nie udało mi się uruchomić, żadnego środowiska uruchomieniowego dla telefonów. Domyślam się, że może to być związane z tym, że mam na nim kartę i sterowniki NVidi. Na komputerze z Intelem wszystko było OK.
Na koniec jeszcze dwa przykładowe zrzuty ekranu jak to wygląda na żywo.
Środowisko dla netbooków
Środowisko dla telefonów
Więcej zrzutów można obejrzeć na poniższym pokazie slajdów:
Pomimo tego, że środowisko dla netbooków, wygląda tak jak wielu czytelników zapewne widziało na różnych screenach w Internecie to nie można powiedzieć już tego samego o wersji na telefony. Jest ona bardzo okrojona, zawiera jedynie kilka dodatkowych aplikacji i w ogóle nie prezentuje się najlepiej. Ale przecież, nie jest to środowisko do codziennego używania, a jedynie do testów i rozwoju własnych aplikacji.
Na razie to tyle :) Kolejnym razem opiszę jak do tego wszystkiego podłączyć Qt Creatora.
0 komentarze:
Prześlij komentarz