Pergunta

Alguns meses ego, comprei o dispositivo Nokia N800 e, desde então, estou ansioso para escrever algum código para ele. Sei que parte do aplicativo que estou executando está escrito em Python e que há uma porta mono para a plataforma Maemo também.

Basicamente, o que estou perguntando é:

  • Existe uma linguagem de desenvolvimento recomendada para a plataforma Maemo?
  • Quais ferramentas de desenvolvimento existem?
  • Posso usar o Windows ou o Linux como minha máquina de desenvolvimento principal e qual você recomenda e por quê?
Foi útil?

Solução

A estrutura de Hildon é composta de extensões GTK+, então o idioma é C. Você pode usar invólucros C ++ (Maemomm) também. Ou você pode ir com pymaemo Para criar aplicativos com Python, o que para mim é muito mais fácil que C ou C ++. Também vi uma tentativa de um porto de rubi, mas não acompanhei esse projeto recentemente.

Para o ambiente de desenvolvimento, há "Scratchbox", que oferece uma caixa de areia para compilar e executar seu aplicativo. Aqui está um link sobre como configurar um Scratchbox ambiente de desenvolvimento. (Com certeza levei muito tempo para configurar tudo.)

Você terá que usar o Linux como sua máquina de desenvolvimento, porque seu Nokia N800 é realmente um mini -computador Linux.

Se você quiser ter uma experiência de IDE, tente o ESBOX plugin para eclipse.

Divirta -se hackers !!!

Outras dicas

Eu sugiro que você tente C ++ e QT.

Qt já é bem apoiado para Diablo e Fremantle, e a próxima liberação de maemo (Harmattan) deve ser com base no qt.

O aprendizado do QT será muito mais fácil do que o GTK+, a codificação será mais rápida e divertida, seu aplicativo pode ser compilado em várias plataformas e você pode até desenvolver e depurar no Windows e simplesmente executar um QMake && para fazer em um ambiente de arranhões.

Dê uma olhada neste tutorial: Introdução a QT para maemo

Você ainda precisa de uma caixa Linux para compilar seu código para um dispositivo de maemo. Se você estiver usando o Windows, poderá configurar o Ubuntu (ou Kubuntu) em uma máquina VirtualBox.

Maemo SDK + Junto com o Scratchbox 2, é uma alternativa melhor que o Maemo SDK & Scratchbox.

Pessoalmente, estou usando o QT Creator no Windows, Kubuntu 9.04 no VirtualBox, e nunca fiquei mais feliz. Quando comecei, tentei a abordagem "oficial": Ubuntu, GTK+, C Language e Scratchbox 1. ... Isso foi doloroso.

Para uma diversão extra em movimento, você pode obter o Linux GCC e fazer ferramentas executando no próprio tablet e fazer sua programação e compilação no dispositivo. Para qualquer ajuda com esse tipo de coisa, o Conversa de maemo Os fóruns são fantásticos.

Ruby para maemo está sendo hospedado em http://code.scottishclimbs.com/maemo/

Ainda não tentei.

Há um Scratchbox Virtual Appliance Para o desenvolvimento de maemo (não tenho certeza se o link é o certo), mas foi assim que comecei a invadir. Demorou uma eternidade para eu descobrir como configurar a Scratchbox sozinha.

Eu tenho que ecoar a resposta de Karachov.

As duas abordagens recomendadas atualmente são:

  • Python + pygtk

  • C ++ e QT

Usando qualquer outra coisa, você se prepara para uma dor (a menos que seja um veterano GTK+ - já que está fazendo essa pergunta, presumo que não seja). De qualquer maneira, o C ++ e o QT é o futuro do maemo, e o QT funciona bem em plataformas "antigas", como o Diablo.

Como depurador, recomendo que você pegue (compile) "CGDB". O GDB antigo e simples pode ser um pouco espartano.

Geralmente, você deve desenvolver seu aplicativo como um aplicativo QT "normal" usando o QT Creator e ocasionalmente testá -lo no Scratchbox.

A Nokia tem trabalhado duro para fornecer ferramentas e documentação para os desenvolvedores. Eu diria que um dos melhores lugares para começar é no fórum Nokia:

http://www.forum.nokia.com/technology_topics/device_platforms/maemo.xhtml

A próxima parada para o desenvolvimento do Maemo é, obviamente, a sede de Maemo:

http://maemo.org/development/

Esses dois links são para portais onde você terá que perfurar mais informações, mas são bons pontos de partida. Agora, para responder diretamente às suas perguntas:

  • Suponho que os dois idiomas 'recomendados' são C e Python. Embora sejam bem suportados, eles não são as únicas opções como você já viu nas respostas anteriores. Além desses idiomas, o Perl está no dispositivo, embora não esteja no mesmo estado do Debian.

  • A principal ferramenta de desenvolvimento é o SDK. Ele permite testar o ambiente e compilar o software para o dispositivo. Você também pode usar o Eclipse para o qual existem plugins.

  • Recomenda -se que você use o Linux como uma máquina de desenvolvimento, mas você pode executá -lo em uma máquina virtual no Windows. Embora eu prefira que meu sistema operacional seja 100% gratuito e, portanto, escolha Debian, a Nokia está trabalhando duro para criar um melhor ambiente de desenvolvimento para o Windows. Portanto, tenha certeza de que a Nokia não compartilha necessariamente meu viés! :-)

Eu desenvolvo principalmente com Python e Pyside (eu desenvolvo em um N900). Eu tenho todos os meus arquivos no Nokia N900 e uso SSHFs para montar meu diretório doméstico no meu PC. Em seguida, desenvolvo na minha área de trabalho, salmo tudo no telefone celular e uso o SSH para executá -lo remotamente.

Se você ficar com preguiça de pegar o dispositivo para olhar para a tela, convém usar o VNC; Embora pessoalmente, sinto que não é responsivo o suficiente.

Sim, tudo o que tenho no meu desktop é meu editor (a propósito, sublime, a propósito). O resto ao vivo no dispositivo móvel. Eu uso o git para sincronizar coisas/fazer backups, etc.

O PY2DEB é ótimo para fazer pacotes quando você deseja distribuir seu proteliso. Novamente, não há necessidade de instalar nada na sua área de trabalho.

Se você preferir ser mais conservador, o SDK foi projetado para o Debian e você sofrerá muito com qualquer sistema operacional não baseado em provavelmente embianos (a menos que você use uma VM). Esteja avisado! :)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top