sailfish - Cómo comenzar con el desarrollo del software Maemo
sistema operativo maemo (9)
El marco de Hildon está compuesto por extensiones GTK +, por lo que el lenguaje es C. También puede utilizar contenedores C ++ ( maemomm ). O puede ir con pymaemo para crear aplicaciones con Python, que para mí es mucho más fácil que C o C ++. También he visto un intento en un puerto de rubí, pero no he seguido con ese proyecto recientemente.
Para el entorno de desarrollo, hay "scratchbox", que le ofrece un entorno limitado para compilar y ejecutar su aplicación. Aquí hay un enlace sobre cómo configurar un entorno de desarrollo de scratchbox . (Definitivamente me llevó mucho tiempo configurar todo).
Tendrás que utilizar Linux como tu máquina de desarrollo porque tu Nokia N800 es realmente una mini computadora Linux.
Si quieres tener una experiencia IDE, prueba el plugin de ESbox para Eclipse.
Diviértete pirateando!
Unos meses después compré el dispositivo Nokia N800 y desde entonces estoy ansioso por escribir un código para él. Sé que parte de la aplicación que estoy ejecutando está escrita en Python y que también hay un puerto Mono para la plataforma Maemo.
Básicamente lo que estoy preguntando es:
- ¿Hay un lenguaje de desarrollo recomendado para la plataforma Maemo?
- ¿Qué herramientas de desarrollo existen?
- ¿Puedo usar Windows o Linux como mi máquina de desarrollo principal, y cuál recomienda y por qué?
Para una diversión extra en el camino, puede obtener el linux gcc y hacer que las herramientas funcionen en la tableta y realizar su programación y compilación en el dispositivo. Para cualquier ayuda con este tipo de cosas, los foros de Maemo Talk son fantásticos.
Acabo de encontrar dos tutoriales en Maemo.org:
Hay un dispositivo virtual Scratchbox para el desarrollo de Maemo (no estoy seguro si el enlace es el correcto) pero así es como comencé a piratear. Me llevó una eternidad descubrir cómo configurar yo mismo el scratchbox.
Le recomiendo que pruebe C ++ y QT.
QT ya cuenta con un buen soporte para Diablo y Fremantle, y la próxima versión de Maemo (Harmattan) debería basarse en QT .
Aprender QT será mucho más fácil que GTK +, la codificación será más rápida y más divertida, tu aplicación se puede compilar en varias plataformas e incluso puedes desarrollar y depurar en Windows, y luego simplemente ejecutar un qmake && make en un entorno de scratchbox.
Eche un vistazo a este tutorial: Cómo comenzar con QT para Maemo
Aún necesita una caja Linux para compilar su código para un dispositivo Maemo. Si está usando Windows, puede configurar ubuntu (o kubuntu) en una máquina VirtualBox.
Maemo SDk + junto con Scratchbox 2 es una mejor alternativa que Maemo SDk y Scratchbox.
Personalmente, estoy usando el creador de QT en Windows, kubuntu 9.04 en VirtualBox, y nunca he estado más feliz. Cuando comencé, probé el enfoque "oficial": Ubuntu, GTK +, lenguaje C y scratchbox 1. ... eso fue doloroso.
Ruby para Maemo está alojado en http://code.scottishclimbs.com/maemo/
Todavía no lo he probado yo mismo.
Nokia ha estado trabajando arduamente para proporcionar herramientas y documentación para desarrolladores. Yo diría que uno de los mejores lugares para comenzar es en Forum Nokia:
http://www.forum.nokia.com/Technology_Topics/Device_Platforms/Maemo.xhtml
La siguiente parada para desarrollar para Maemo es, por supuesto, la sede de Maemo:
Estos dos enlaces son a portales donde tendrá que profundizar para obtener más información, pero son puntos de partida bastante buenos. Ahora para responder sus preguntas directamente:
Supongo que los dos idiomas "recomendados" son C y python. Si bien estos son bien compatibles, no son las únicas opciones que ha visto en las respuestas anteriores. Además de esos idiomas, Perl está en el dispositivo, aunque no está en el mismo estado que en Debian.
La principal herramienta de desarrollo es el SDK. Le permite probar el entorno y compilar software para el dispositivo. También puede usar Eclipse para el que hay complementos.
Se recomienda que utilice Linux como máquina de desarrollo, pero puede ejecutarlo en una máquina virtual en Windows. Si bien prefiero que mi sistema operativo sea 100% libre y, por lo tanto, elijo Debian, Nokia está trabajando arduamente para crear un mejor entorno de desarrollo para Windows. ¡Así que puede estar seguro de que Nokia no necesariamente comparte mi sesgo! :-)
Tengo que hacerme eco de la respuesta de Karatchov.
Los 2 enfoques recomendados actualmente son:
Python + PyGtk
C ++ y Qt
Al usar cualquier otra cosa, te pones a prueba para sentir algo de dolor (a menos que seas un veterano Gtk +, ya que estás haciendo esta pregunta, supongo que no). C ++ & Qt es el futuro de Maemo de todos modos, y Qt funciona bien en plataformas "antiguas" como Diablo.
Como depurador, le recomiendo que recoja (compile) "cgdb". El simple viejo gdb puede ser un poco espartano.
En general, debe desarrollar su aplicación como una aplicación Qt "normal" utilizando Qt Creator, y ocasionalmente probarla en scratchbox.
Me desarrollo principalmente con python y pyside (desarrollo en un N900). Tengo todos mis archivos en el Nokia N900 y uso sshfs para montar mi directorio personal en mi pc. Luego desarrollo en mi escritorio, mientras guardo todo en el teléfono celular, y uso SSH para ejecutarlo de manera remota.
Si te da pereza incluso para levantar el dispositivo para mirar la pantalla, quizás quieras usar VNC; aunque personalmente, siento que no es suficientemente receptivo.
Sí, todo lo que tengo en mi escritorio es mi editor (sublime-text, por cierto). El resto vive en el dispositivo móvil. Uso git para sincronizar cosas / hacer copias de seguridad, etc.
py2deb es ideal para hacer paquetes una vez que desea distribuir su proyecto. Nuevamente, no es necesario instalar nada en su escritorio.
SI prefieres ser más conservador, el SDK está diseñado para Debian, y sufrirás mucho con cualquier SO no basado en Debian (a menos que uses una VM). ¡Ten cuidado! :)