Nokia N900: telefon pro geeky ze seriálu IT Crowd

Nokia nám tvrdí, že je N900 počítač, který se vejde do kapsy. Dnes si názorně ukážeme, že je to naprostá pravda. Radek Hulán prohání Maemo.
Nokia N900: telefon pro geeky ze seriálu IT Crowd
Kapitoly článku

Autor: Radek Hulán píše odborný blog na adrese MyEgo.cz a zajišťuje realizaci webových prezentací ve společnosti F-ART AGENCY s.r.o.

rado100.jpg


Nokia N900 byla již na MobilManii podrobně představena ve velkém testu, a to z tradičního uživatelského pohledu. Tento článek se zaměří na specifické a výrazně technické věci (to má být varování pro běžné uživatele) – zprovoznění vývojového prostředí Maemo SDK a popis kompilace a vývoje aplikací pro tento telefon.

Nokii N900 pohání Linux, konkrétně je to Debian pro ARM procesory s verzí kernelu 2.6.28. To dává zajímavé možnosti zejména ve snadném přenosu obrovského portfolia existujících GNU aplikací na tuto platformu, a částečně i pro váš vlastní vývoj (i když zde bych neviděl pozici N900 až tak silnou, konkurence třeba ve formě Visual Studia 2008 a vývoje pro Windows Mobile je výborná).

V N900 je použit ARM procesor, který nepodporuje x86 architekturu, je tedy potřeba kompilovat aplikace speciálně pro tento cíl. Nokia dodává v Maemo SDK crosscompiler Scratchbox, který umí zkopilovat váš kód nejen pro x86 platformu, ale i pro ARM procesor, a obsahuje také X Server Xephyr a podstatnou část uživatelského prostředí telefonu (UI), v němž můžete otestovat x86 aplikaci předtím, než ji nahrajete do přístroje.

Klepněte pro větší obrázek

Instalace Maemo SDK

Instalátor Maemo SDK si můžete stáhnout ve formě 100KB "grafického klikátka" (Qt aplikace v Pythonu) anebo terminálového skriptu na stránkách nokia.com. Součástí instalace je i nutný souhlas s Nokia EULA a zadání captcha kódu, protože z části budete stahovat uzavřený binární kód. Pro instalaci je doporučeno použít Debian, nebo nějaký systém na něm založený, tedy třeba oblíbené Ubuntu 9.10.

Pokud už Debian / Ubuntu používáte, ať už ve virtuálním stroji pomocí VMware Workstation či Windows Virtual PC, anebo jako ostré prostředí, postačí vám stáhnout si výše uvedený skript. Pokud jste uživatel jiného operačního systému (typicky Windows), můžete si stáhnout virtuální obraz (jedná se o instalaci Ubuntu) a do něj nainstalovat příslušné SDK, popřípadě si Ubuntu stáhnout a instalovat z Ubuntu.com. Ke spuštění použijte vynikající VMware Player.

Instalační skript v Pythonu spustíte následovně:

$ chmod a+x maemo-sdk-install-wizard_5.0.py
$ sudo ./maemo-sdk-install-wizard_5.0.py

Vlastní instalace si stahuje stovky MB dat z internetu, takže to nějakou chvíli zabere, při instalaci můžete použít přednastavené hodnoty pro veškeré dotazy.

Klepněte pro větší obrázek

Emulace prostředí Nokia N900 na PC

Po instalaci se vám na ploše vytvoří odkaz na spuštění Xephyr serveru, který si pochopitelně můžete zavolat i z příkazové řádky (viz dokumentace):

$ Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac -kb &

Samotný Xephyr X Server sice k vývoji nutně nepotřebujete, ale bude se vám hodit pro otestování a ladění aplikace předtím, než ji nahrajete na telefon. Prostředí crosscompileru Scratchbox spustíte následovně:

$ /scratchbox/login

Pro testování aplikace pro Nokia N900 na PC musíte nastavit DISPLAY proměnnou shodně s konfigurací Xephyr serveru a spustit emulaci uživatelského prostředí Nokia telefonu pomocí zavolání skriptu af-sb-init.sh:

$ export DISPLAY=:2
$ af-sb-init.sh start

Tímto se vám spustí Xephyr server na vašem PC s aplikačním a uživatelským rozhraním Nokia N900 a můžete s ním pracovat:

Klepněte pro větší obrázek   

Scratchbox crosscompiler a jeho cíle

Crosscompiler Scratchbox má předdefinované dva různé cíle. První je nazvaný FREMANTLE_X86 pro kompilaci, spouštění a ladění Maemo aplikací na vašem PC, a druhý FREMANTLE_ARMEL, který nastavuje prostředí a kompilátor pro ARM architekturu a umožňuje kompilovat aplikace pro spuštění v telefonu. Mezi těmito dvěma cíly se můžete přepínat pomocí aplikace sb-menu a následné volby Select target:

Klepněte pro větší obrázek

Alternativou je použití sb-conf, a to jedním z následujících příkazů:

$ sb-conf select FREMANTLE_ARMEL
$ sb-conf select FREMANTLE_X86

Článek patří do rubrik: Smartphony

49 komentářů

Diskuze

  • Subber. , 4. 1. 2010 16:40:52
    Vite vy vubec co znamena to $ ? To se nepise, to znamena ze se to ma...
  • , 2. 1. 2010 16:00:41
    třeba se ho tam (it crowd) dočkáme bude další série
  • Dan , 1. 1. 2010 13:24:05
    Pana Hulana neznam, ale jako autor clanku je slabej. MobilMania by mela...

Určitě si přečtěte


Sony Xperia XA: nafrněná krasavice [recenze]

Sony Xperia XA: nafrněná krasavice [recenze]

Xperia XA je krásný a elegantní mobil, jehož dobré jméno kazí pouze nevhodně zvolený procesor a vzhledem k výbavě a konkurenci vysoko nastavená cena.

21.  8.  2016 | Láska Jan | 28

Coolpad Torino: není zlato, co se třpytí [recenze]

Coolpad Torino: není zlato, co se třpytí [recenze]

** Předností telefonu je povedený design a rychlá čtečka otisků prstů ** Umí snadno oddělit soukromý a pracovní obsah ** Hlavním nedostatkem je horší konektivita a GPS

19.  8.  2016 | Miksa Martin | 14

Coolpad Modena 2: S lepší výbavou, LTE a stejnou cenou

Coolpad Modena 2: S lepší výbavou, LTE a stejnou cenou

** Coolpad představil nový model Modena 2 ** Nabídne aktuální hardware a plnou podporu LTE za 3 990 Kč ** Prodávat se u nás začne 1. září

18.  8.  2016 | Miksa Martin | 7