QT is already well supported for Diablo and Fremantle, and the next release of Maemo (Harmattan) should be based on QT.
Learning QT will be much much easier than GTK+, coding will be faster and more fun, your application can be compiled in various platforms and you can even develop and debug in Windows, then simply run a qmake && make in a scratchbox environment.
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 + along with Scratchbox 2 is a better alternative than 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.
The Hildon framework is made up of GTK+ extensions, so the language is C. You can use C++ wrappers (maemomm) too. Or you can go with pymaemo for building apps with Python, which to me is much easier than C or C++. I've also seen an attempt at a ruby port, but have not followed up with that project recently.
For the development environment, there is "scratchbox", which gives you a sandbox for compiling and running your app. Here's a link on how to set up a scratchbox development environment. (It sure took me a long time to get everything setup.)
You'll have to use Linux as your development machine because your Nokia N800 is really a mini Linux computer.
If you want to have an IDE experience, try the ESbox plugin for Eclipse.
为了获得额外的移动乐趣,您可以获取 Linux gcc 并制作在平板电脑上运行的工具,并在设备上进行编程和编译。 对于此类内容的任何帮助,Maemo Talk 论坛非常棒。
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.
There's a Scratchbox Virtual Appliance for Maemo development (I'm not sure if the link is the right one) but that's how I started hacking. It took forever for me to figure out how to set up scratchbox by myself.
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.
As a debugger, I recommend you pick up (compile) "cgdb". The plain old gdb can be a bit too spartan.
Generally, you should develop your application as a "normal" Qt application using Qt Creator, and occasionally test it in scratchbox.
These two links are to portals where you'll have to drill down for further info, but they are pretty good starting points. Now to answer your questions directly:
I suppose the two 'recommended' languages are C and python. While these are well supported, they are not the only choices as you have seen from previous answers. In addition to those languages, perl is on the device, though it is not in the same state as it is on debian.
The chief development tool is the SDK. It allows you to test the environment and compile software for the device. You can also use Eclipse for which there are plugins.
It is recommended that you use linux as a development machine, but you can run it in a virtual machine on Windows. While I prefer my OS to be 100% free and therefor choose debian, Nokia is working hard to make a better development environment for Windows. So rest assured that Nokia does not necessarily share my bias! :-)
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.
If you get too lazy to even pick up the device to look at the screen, you might want to use VNC; though personally, I feel it's just not responsive enough.
Yes, all I have on my desktop is my editor (sublime-text, by the way). The rest live on the mobile device. I use git to sync things/make backups, etc.
py2deb is great for making packages once you want to distribute your proyect. Again, no need to install anything on your desktop.
IF you'd rather be more conservative, the SDK is designed for debian, and you'll suffer a lot with any non-debian-based OS (unless you use a VM). Be warned! :)
发布评论
评论(9)
我强烈建议你尝试 C++ 和 QT。
QT 已经得到了 Diablo 和 Fremantle 的良好支持,Maemo (Harmattan) 的下一个版本应该是基于 QT。
学习 QT 会比 GTK+ 容易得多,编码会更快、更有趣,你的应用程序可以在各种平台上编译,甚至可以在 Windows 中开发和调试,然后只需运行 qmake && 即可。 在暂存盒环境中制作。
看看这个教程:开始使用 QT for Maemo
你仍然需要一个 Linux 盒子,用于为 Maemo 设备编译代码。
如果您使用的是 Windows,则可以在 VirtualBox 计算机中安装 ubuntu(或 kubuntu)。
Maemo SDK + 和 Scratchbox 2 是比 Maemo SDk 和 Scratchbox 2 更好的替代方案。 便签盒。
就我个人而言,我在 Windows 中使用 QT Creator,在 VirtualBox 中使用 kubuntu 9.04,我从未如此高兴过。
当我开始时,我尝试了“官方”方法:Ubuntu、GTK+、C 语言和 scrapbox 1....那很痛苦。
I highly suggest that you try C++ and QT.
QT is already well supported for Diablo and Fremantle, and the next release of Maemo (Harmattan) should be based on QT.
Learning QT will be much much easier than GTK+, coding will be faster and more fun, your application can be compiled in various platforms and you can even develop and debug in Windows, then simply run a qmake && make in a scratchbox environment.
Take a look at this tutorial: Getting started wit QT for 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 + along with Scratchbox 2 is a better alternative than 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.
Hildon 框架由 GTK+ 扩展组成,因此语言是 C。您可以使用 C++ 包装器 (maemomm) 也是。 或者你可以使用 pymaemo 使用 Python 构建应用程序,对我来说这比 C 或 C 容易得多C++。 我还看到了红宝石端口的尝试,但最近没有跟进该项目。
对于开发环境,有“scratchbox”,它为您提供了一个用于编译和运行应用程序的沙箱。 以下链接介绍了如何设置 scratchbox 开发环境。 (我确实花了很长时间才完成所有设置。)
您必须使用 Linux 作为您的开发机器,因为您的诺基亚 N800 实际上是一台迷你 Linux 计算机。
如果您想获得 IDE 体验,请尝试 Eclipse 的 ESbox 插件。
玩得开心黑客!!!
The Hildon framework is made up of GTK+ extensions, so the language is C. You can use C++ wrappers (maemomm) too. Or you can go with pymaemo for building apps with Python, which to me is much easier than C or C++. I've also seen an attempt at a ruby port, but have not followed up with that project recently.
For the development environment, there is "scratchbox", which gives you a sandbox for compiling and running your app. Here's a link on how to set up a scratchbox development environment. (It sure took me a long time to get everything setup.)
You'll have to use Linux as your development machine because your Nokia N800 is really a mini Linux computer.
If you want to have an IDE experience, try the ESbox plugin for Eclipse.
Have fun hacking!!!
我刚刚在 Maemo.org 上找到了两个教程:
I've just found two tutorials on Maemo.org:
为了获得额外的移动乐趣,您可以获取 Linux gcc 并制作在平板电脑上运行的工具,并在设备上进行编程和编译。
对于此类内容的任何帮助,Maemo Talk 论坛非常棒。
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/
我'我自己还没有尝试过。
Ruby for Maemo is being hosted at http://code.scottishclimbs.com/maemo/
I've not yet tried it myself.
有一个用于 Maemo 开发的 Scratchbox 虚拟设备(我不确定链接是否是正确的)但这就是我开始黑客攻击的方式。 我花了很长时间才弄清楚如何自己设置草稿箱。
There's a Scratchbox Virtual Appliance for Maemo development (I'm not sure if the link is the right one) but that's how I started hacking. It took forever for me to figure out how to set up scratchbox by myself.
我必须回应卡拉乔夫的回应。
目前推荐的 2 种方法是:
Python + PyGtk
C++ & Qt
使用其他任何东西,你都会给自己带来一些痛苦(除非你是 Gtk+ 老手 - 既然你问这个问题,我假设你不是)。 C++ & 无论如何,Qt 是 Maemo 的未来,并且 Qt 在 Diablo 等“旧”平台上运行良好。
作为调试器,我建议您选择(编译)“cgdb”。 普通的老式 gdb 可能有点过于简陋。
一般来说,您应该使用 Qt Creator 将应用程序开发为“普通”Qt 应用程序,并偶尔在 scrapbox 中测试它。
I have to echo Karatchov's response.
The 2 recommended approaches currently are:
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.
As a debugger, I recommend you pick up (compile) "cgdb". The plain old gdb can be a bit too spartan.
Generally, you should develop your application as a "normal" Qt application using Qt Creator, and occasionally test it in scratchbox.
诺基亚一直致力于为开发者提供工具和文档。 我想说最好的起点之一是诺基亚论坛:
http:// /www.forum.nokia.com/Technology_Topics/Device_Platforms/Maemo.xhtml
Maemo 开发的下一站当然是 Maemo 的总部:
http://maemo.org/development/
这两个链接指向您必须深入了解更多信息的门户,但它们是非常好的起点。 现在直接回答您的问题:
我认为两种“推荐”语言是 C 和 python。 虽然这些得到了很好的支持,但正如您从之前的答案中看到的那样,它们并不是唯一的选择。 除了这些语言之外,设备上还存在 perl,尽管它与 debian 上的状态不同。
主要的开发工具是SDK。 它允许您测试环境并为设备编译软件。 您还可以使用有插件的 Eclipse。
建议您使用linux作为开发机,但是您可以在Windows上的虚拟机中运行它。 虽然我更喜欢 100% 免费的操作系统,因此选择了 Debian,但诺基亚正在努力为 Windows 打造更好的开发环境。 所以请放心,诺基亚不一定有我的偏见! :-)
Nokia has been working hard to provide tools and documentation for developers. I would say one of the best places to start is at Forum Nokia:
http://www.forum.nokia.com/Technology_Topics/Device_Platforms/Maemo.xhtml
The next stop for developing for Maemo is of course Maemo's headquarters:
http://maemo.org/development/
These two links are to portals where you'll have to drill down for further info, but they are pretty good starting points. Now to answer your questions directly:
I suppose the two 'recommended' languages are C and python. While these are well supported, they are not the only choices as you have seen from previous answers. In addition to those languages, perl is on the device, though it is not in the same state as it is on debian.
The chief development tool is the SDK. It allows you to test the environment and compile software for the device. You can also use Eclipse for which there are plugins.
It is recommended that you use linux as a development machine, but you can run it in a virtual machine on Windows. While I prefer my OS to be 100% free and therefor choose debian, Nokia is working hard to make a better development environment for Windows. So rest assured that Nokia does not necessarily share my bias! :-)
我主要使用 python 和 pyside 进行开发(我在 N900 上开发)。
我的所有文件都在诺基亚 N900 中,我使用 sshfs 将我的主目录挂载到我的电脑上。
然后我在桌面上进行开发,同时将所有内容实际保存到手机中,并使用 SSH 远程运行它。
如果您懒得拿起设备看屏幕,您可能需要使用 VNC; 但就我个人而言,我觉得它的反应不够灵敏。
是的,我桌面上只有我的编辑器(顺便说一下,sublime-text)。 其余的则位于移动设备上。 我使用 git 来同步事物/进行备份等。
当你想要分发你的项目时,py2deb 非常适合制作包。 同样,无需在桌面上安装任何东西。
如果您愿意更保守,该 SDK 是为 debian 设计的,并且您将在任何非基于 debian 的操作系统上遭受很多的痛苦(除非您使用虚拟机)。 被警告! :)
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.
If you get too lazy to even pick up the device to look at the screen, you might want to use VNC; though personally, I feel it's just not responsive enough.
Yes, all I have on my desktop is my editor (sublime-text, by the way). The rest live on the mobile device. I use git to sync things/make backups, etc.
py2deb is great for making packages once you want to distribute your proyect. Again, no need to install anything on your desktop.
IF you'd rather be more conservative, the SDK is designed for debian, and you'll suffer a lot with any non-debian-based OS (unless you use a VM). Be warned! :)