English 中文(简体)
如何开始Maemo软件开发 [关闭]
原标题:
  • 时间:2009-01-08 08:39:03
  •  标签:
Closed. This question needs to be more focused. It is not currently accepting answers.

想要改进这个问题吗?通过编辑这篇文章,更新问题,让它只关注一个问题。

Closed 9 years ago.

几个月前,我购买了诺基亚N800设备,从那以后我就痒痒地想为它编写一些代码。我知道我运行的一些应用程序是用Python编写的,并且Maemo平台上也有一个Mono端口。

基本上我在问的是:

  • Is there a recommended development language for Maemo platform?
  • What development tools exist?
  • Can I use Windows or Linux as my primary development machine, and which do you recommend and why?
最佳回答

Hildon框架是由GTK +扩展组成的,因此语言是C。您也可以使用C ++包装器(maemomm) 。或者您可以选择使用Python构建应用程序的pymaemo,对我来说比C或C ++容易得多。我还看到了一次对Ruby端口的尝试,但是最近没有跟进该项目。

对于开发环境,有“scratchbox”,它可以为编译和运行应用程序提供沙盒。这里有一个关于如何设置 scratchbox 开发环境的链接。(我花了很长时间才设置好。)

你必须使用Linux作为开发机器,因为你的诺基亚N800实际上是一台迷你Linux电脑。

如果你想要拥有一个类似IDE的体验,试试Eclipse的ESbox插件。(链接)

玩得开心!!!

问题回答

我强烈建议你尝试使用C++和QT。

QT已经得到Diablo和Fremantle的良好支持,下一个Maemo版本(Harmattan)应该基于QT。

学习QT会比GTK+容易得多,编码会更快,更有趣,你的应用程序可以在各种平台编译,甚至可以在Windows中开发和调试,然后在scratchbox环境下运行qmake && make。

请看这个教程:入门QT Maemo

You still need a Linux box to compile your code for a Maemo device. If you are using windows, you can setup ubuntu (or kubuntu) in a VirtualBox machine.

Maemo SDk + 以及 Scratchbox 2 与 Maemo SDk & Scratchbox 相比,是更好的选择。

Personnally, I m using QT creator in Windows, kubuntu 9.04 in VirtualBox, and I ve never been happier. When I started, I tried the "official" approach : Ubuntu, GTK+, C language and scratchbox 1. ... that was painful.

For extra on-the-go fun, you can get the linux gcc and make tools running on the tablet itself and do your programming and compiling on the device. For any help with this sort of stuff the Maemo Talk forums are fantastic.

Ruby for Maemo正在http://code.scottishclimbs.com/maemo/上托管。

我自己还没有尝试过。

有一个为Maemo开发设计的Scratchbox虚拟设备(我不确定链接是否正确),但这是我开始进行计算机程序的方式。我花费很长时间才弄清楚如何独自设置Scratchbox。

我必须回应Karatchov的回答。

目前推荐的两种方法是:

  • Python + PyGtk Python + PyGtk

  • C++ 和 Qt

Using anything else, you set yourself up for some pain (unless you are a Gtk+ veteran - since you are asking this question, I assume you are not). C++ 和 Qt is the future of Maemo anyway, and Qt works well on "old" platforms such as Diablo.

作为一个调试器,我建议你使用(编译)“cgdb”。普通的gdb可能有些过于简洁。

通常情况下,您应该使用Qt Creator开发您的应用程序,成为一个“正常”的Qt应用程序,并偶尔在scratchbox中进行测试。

诺基亚一直在努力为开发者提供工具和文档。我会说其中一个最好的地方是 Forum Nokia。

请将此翻译为中文:http://www.forum.nokia.com/Technology_Topics/Device_Platforms/Maemo.xhtml。 http://www.forum.nokia.com/Technology_Topics/Device_Platforms/Maemo.xhtml

下一个开发Maemo的目标当然是Maemo的总部:

将此翻译为中文:http://maemo.org/development/ http://maemo.org/development/

这两个链接是门户网站,您需要进一步获取信息,但它们是很好的起点。现在直接回答您的问题:

  • 我认为两种推荐的编程语言是 C 和 Python。虽然它们得到了很好的支持,但这并不是你在之前的回答中看到的唯一选择。除了这些语言之外,设备上还有 Perl,但它与 Debian 上的状态不同。

  • 主要开发工具是SDK。它允许您测试环境并编译设备的软件。您也可以使用Eclipse,其中有插件。

  • 建议您使用Linux作为开发机器,但您可以在Windows的虚拟机上运行它。虽然我更喜欢我的操作系统是100%免费的,因此选择debian,但诺基亚正在努力为Windows打造更好的开发环境。所以请放心,诺基亚并不一定分享我的偏见! :-)

I develop mainly with python and pyside (I develop on an N900). I have all my files in the nokia N900 and I use sshfs to mount my home directory on my pc. I then develop on my desktop, while actually saving everything right into the cell phone, and use SSH to run it remotely.

如果您连拿起设备查看屏幕的力气都没有了,您可能会想使用VNC;但就我个人而言,我觉得它的响应速度不够。

是的,我桌面上只有我的编辑器(顺便说一下,是Sublime Text)。其它文件都在移动设备上。我使用Git来同步文件/备份等等。

Py2deb对于在你想要分发你的项目时制作软件包非常有用。再次强调,无需在您的桌面上安装任何东西。

如果您更喜欢保守一点,SDK是为debian设计的,在任何非基于debian的操作系统上您都会受到很多困难(除非您使用虚拟机)。请注意! :)





相关问题
热门标签