Domanda

Ego da qualche mese ho acquistato il dispositivo Nokia N800 e da allora non vedo l'ora di scrivere del codice. So che alcune delle applicazioni in esecuzione sono scritte in Python e che esiste anche una porta Mono per la piattaforma Maemo.

Fondamentalmente quello che sto chiedendo è:

  • Esiste un linguaggio di sviluppo consigliato per la piattaforma Maemo?
  • Quali strumenti di sviluppo esistono?
  • Posso usare Windows o Linux come macchina di sviluppo principale, e quale mi consigliate e perché?
È stato utile?

Soluzione

Il framework Hildon è composto da estensioni GTK +, quindi la lingua è C. Puoi usare i wrapper C ++ ( maemomm ). Oppure puoi andare con pymaemo per creare app con Python, che per me è molto più semplice di C o C ++. Ho anche visto un tentativo in un porto rubino, ma non ho seguito di recente quel progetto.

Per l'ambiente di sviluppo è presente "scratchbox", che offre un sandbox per la compilazione e l'esecuzione dell'app. Ecco un link su come impostare un scratchbox . (Di sicuro mi ci è voluto molto tempo per installare tutto.)

Dovrai usare Linux come macchina di sviluppo perché il tuo Nokia N800 è davvero un mini computer Linux.

Se vuoi avere un'esperienza IDE, prova il plug-in ESbox per Eclipse.

Divertiti l'hacking !!!

Altri suggerimenti

Consiglio vivamente di provare C ++ e QT.

QT è già ben supportato per Diablo e Fremantle e la prossima versione di Maemo (Harmattan ) dovrebbe essere basato su QT .

Imparare QT sarà molto più semplice di GTK +, la codifica sarà più veloce e più divertente, la tua applicazione può essere compilata su varie piattaforme e puoi persino sviluppare e debug in Windows, quindi eseguire semplicemente un qmake & amp; & amp; creare in un ambiente scratchbox.

Dai un'occhiata a questo tutorial: Introduzione a QT per Maemo

Hai ancora bisogno di un box Linux per compilare il tuo codice per un dispositivo Maemo. Se stai usando Windows, puoi installare Ubuntu (o Kubuntu) in una macchina VirtualBox.

Maemo SDk + insieme a Scratchbox 2 è un'alternativa migliore di Maemo SDk & amp; Scratchbox.

Personalmente, sto usando QT Creator in Windows, Kubuntu 9.04 in VirtualBox, e non sono mai stato più felice. Quando ho iniziato, ho provato il " ufficiale " approccio: Ubuntu, GTK +, linguaggio C e scratchbox 1. ... è stato doloroso.

Per un divertimento extra in movimento, puoi ottenere Linux gcc e creare strumenti in esecuzione sul tablet stesso ed eseguire la programmazione e la compilazione sul dispositivo. Per qualsiasi aiuto con questo genere di cose, i Maemo Talk sono fantastici.

Ruby per Maemo è ospitato su http://code.scottishclimbs.com/maemo/

Non l'ho ancora provato da solo.

Esiste un Scratchbox Virtual Appliance per lo sviluppo di Maemo (non sono sicuro che il link è quello giusto) ma è così che ho iniziato a fare hacking. Ho impiegato un'eternità a capire come impostare scratchbox da solo.

Devo fare eco alla risposta di Karatchov.

I 2 approcci consigliati attualmente sono:

  • Python + PyGtk

  • C ++ & amp; Qt

Usando qualsiasi altra cosa, ti prepari per un po 'di dolore (a meno che tu non sia un veterano Gtk + - dal momento che stai ponendo questa domanda, suppongo che non lo sia). C ++ e amp; Qt è comunque il futuro di Maemo e Qt funziona bene sul "vecchio". piattaforme come Diablo.

Come debugger, ti consiglio di raccogliere (compilare) " cgdb " ;. Il semplice vecchio gdb può essere un po 'troppo spartano.

Generalmente, dovresti sviluppare la tua applicazione come " normale " Applicazione Qt usando Qt Creator e occasionalmente testala in scratchbox.

Nokia ha lavorato duramente per fornire strumenti e documentazione per gli sviluppatori. Direi che uno dei posti migliori per iniziare è al Forum Nokia:

http://www.forum.nokia.com/Technology_Topics/Device_Platforms /Maemo.xhtml

La prossima tappa per lo sviluppo di Maemo è ovviamente il quartier generale di Maemo:

http://maemo.org/development/

Questi due collegamenti sono a portali in cui è necessario eseguire il drill down per ulteriori informazioni, ma sono punti di partenza piuttosto buoni. Ora per rispondere direttamente alle tue domande:

  • Suppongo che le due lingue "raccomandate" siano C e Python. Mentre questi sono ben supportati, non sono le uniche scelte come hai visto dalle risposte precedenti. Oltre a quelle lingue, perl è sul dispositivo, sebbene non sia nello stesso stato in cui si trova su debian.

  • Lo strumento di sviluppo principale è l'SDK. Ti consente di testare l'ambiente e compilare software per il dispositivo. Puoi anche usare Eclipse per il quale ci sono plugin.

  • Si consiglia di utilizzare Linux come macchina di sviluppo, ma è possibile eseguirlo in una macchina virtuale su Windows. Mentre preferisco che il mio sistema operativo sia libero al 100% e quindi scelga debian, Nokia sta lavorando sodo per creare un ambiente di sviluppo migliore per Windows. Quindi assicurati che Nokia non condivide necessariamente il mio pregiudizio! : -)

Sviluppo principalmente con Python e Pyside (sviluppo su un N900). Ho tutti i miei file nel Nokia N900 e utilizzo sshfs per montare la mia directory home sul mio pc. Quindi sviluppo sul desktop, salvando tutto nel telefono cellulare e utilizzo SSH per eseguirlo in remoto.

Se diventi troppo pigro anche solo per sollevare il dispositivo per guardare lo schermo, potresti voler usare VNC; sebbene personalmente, ritengo che non sia abbastanza reattivo.

Sì, tutto ciò che ho sul desktop è il mio editor (testo sublime, comunque). Il resto vive sul dispositivo mobile. Uso git per sincronizzare cose / fare backup, ecc.

py2deb è ottimo per creare pacchetti una volta che vuoi distribuire il tuo progetto. Ancora una volta, non è necessario installare nulla sul desktop.

SE preferisci essere più prudente, l'SDK è progettato per debian e soffrirai molto con qualsiasi sistema operativo non basato su Debian (a meno che tu non usi una VM). Stai attento! :)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top