A small present/preview from the developer platform team

December 22, 2009 at 16:04 | Posted in Uncategorized | 41 Comments

The holiday season is here, and we have a small present for you!

It’s a tech preview called Madde, a cross-compilation toolkit for Maemo5. Madde runs on Linux, Windows and Mac, choose your flavour.

It’s a tech preview, so be aware that it isn’t production quality yet. We have played with it a bit, so it definitely works. But as it is a tech preview, don’t expect support.

Madde is a command line tool, but the documentation should clarify how to get started and answer the most common questions.

We would like to hear what you think of it though! There is a component in the Developer platform product in Bugzilla called Madde for any bugs that come up. And we’ll be creating a thread on talk also, where you can give feedback. The team that made Madde is very interested in what you think about the tool.

You can fetch Madde from here. There’s also a .deb package in the downloads to provide a nice way to interface the N900 from Madde. It’s also in development, so don’t expect eye-candy yet.

The idea with Madde is to smooth the way for new developers to shift into Maemo.

The idea is that with Madde you can compile your stuff on your own machine without scratchbox, thus taking away the pain of setting scratchbox up in the first place. Not to mention that setup for Madde is simple, just run the installer and read the instructions while everything is put in place.

The toolkit contains the Qt 4.5 libraries by default. So you can work with Qt directly, no additional downloading needed.

Please tell us what you think.

So happy holidays and hacking to everyone!

41 Comments »

RSS feed for comments on this post. TrackBack URI

  1. […] This post was mentioned on Twitter by gerrymoth and nokiAAddict, danielwilms. danielwilms said: Technical Preview: MADDE – https://maemoteam.wordpress.com/2009/12/22/a-small-presentpreview-from-the-developer-platform-team/ […]

  2. Any plans for saner Linux installation (debs for Ubuntu/Debian, or at least a tarball that supports ./configure + make + make install)?

    • Excellent question/point. I’m not completely sure, but packaging for some major distros might make sense. For this preview the idea was to make it installable as widely as possible.

      • For wide install, providing distribution package is indeed a good idea. Not sure about the licensing stuff, but at one point (when it’s ready) it might make sense to have it included directly in distros (like sb2 which I talk about below).

  3. What are the differences between MADDE and scratchbox2 (which is fully opensource and free)?

    • MADDE runs pretty much everywhere. SB2 is still Linux only.
      The target audience for MADDE is due to that fact larger and thus it is also aimed to be simpler in use. On the downside you’ll notice that some more complicated things are harder to do on MADDE. For example,I wouldn’t suggest it for kernel development.

      Take a look at what MADDE has eaten, you’ll find it pretty open as well.

      • MADDE is meant for developing of new applications from scratch. It does not support autotools or any such utilities that try to probe some information about build environment.
        MADDE is more like a tradiotional cross-compilation environment. It does not try hide from the build process the fact that we are cross-building. Scratchbox[1,2] make build environment looks like a native one.
        Kernel development its actually quite simple. You need only cross-compiler and MADDE offers you that.

  4. Great to see this! πŸ™‚

  5. Thanks,

    this is the kind of stuff we desperately need, next step is easy packaging! mad + mud anyone ?

    • After reading http://wiki.maemo.org/MADDE/Qt_Example we realised this topic is also part of the technology preview.

      • Yes, trying to make packaging simpler for normal apps is also included.
        Have a go and tell us what could be improved.

  6. Yay, a development environment for an open tablet with a restrictive license. Sigh. Why, yet again, does Nokia make things like this closed when doing so doesn’t help Nokia sell more hardware? (Yes, I’ve read the “why the closed packages” doublespeak. Could we at least get a specific *justification* when new closed bits show up?)

    • Anonymous, please download and comment after looking through MADDE.
      No new closed bits here.

      The part that is closed are the Nokia closed binaries. The exact same ones as on device.

      And as you have to be aware there is work ongoing to make the amount of closed packages smaller.

  7. Can I also use MADDE for PyQT development (because Python seems to be easier to learn than C and QT is good for the GUI)?

    • Sorry, MADDE is for C and C++.
      However you can develop Python anywhere anyway.

      I agree that Python is easier to learn than C or C++, but Qt does make the learning experience easier. Check the Qt documentation at http://doc.trolltech.com/4.5/index.html (Qt 4.5 version as in this tech preview of MADDE)

      Especially when you use Qt Designer (Included in Qt Creator) for the interface design, Qt becomes quite easy to learn.

      • Ok, thanks for the reply. I will try it.
        Could I code a PyQT application first and then use MADDE at least for the packaging part?

      • As a new Python developer in training I’m looking forward though to increased support for it. πŸ™‚

  8. DaSilva: yes you can use MADDE for packaging… and also for testing your python
    application without copying the file to the device (see mad remote mount).

  9. Hi,

    I installed it and it looks really great, thank you. I would like to use this in qt-creator so I compiled the qt-creator master git including the QTCREATOR_WITH_MAEMO setting – I get some new settings dialogs but I cannot select the madde toolchain (toolchain selector only shows “GCC” and is disabled). What do I have to do?

    Thanks, Jochen

    • Right now I don’t know. MADDE and Qt Creator will play nice together as you can read from the code, but I’m not sure if everything is in place yet for that. I’ll ask the Qt Creator people once I’m closer to the office.

      • I got it to work! You just have to select a certain qmake from .madde then qt-creator automatically selects the madde toolchain in a new build configuration based on that Qt/Maemo version.
        After creating a new run configuration based on a remote device connection (can be defined in qt-creator settings) my small “Hello World” immediatly built and run fine on the device. Yeah!
        I will continue to find out debugging and documenting it on a new Wiki page at maemo.org.

  10. […] A small present/preview from the developer platform team The holiday season is here, and we have a small present for you! It’s a tech preview called Madde, a […] […]

  11. Wow…. just what I was looking for!

    I’m in hype with Qt and looking to develop some cool new applications using Qt, or maybe for Qt developers πŸ˜‰

    Will post me feedback for sure after doing some sample apps.

    // chall3ng3r //

  12. Any reason not to package Qt 4.6 with this?

    • Qt 4.6 is still under development and Qt 4.5 is on device (ok some libraries come from the Nokia repositories when they are needed). The idea was to have something that can be used for creating apps that work right now.

      Qt 4.6 will come when it’s ready.

  13. I installed it, but the docs folder is missing the documentation. Is it intended for this release?

    // chall3ng3r //

  14. I tried to install the mad-developer package on my N900 but it fails because it expects usb-network-modules 0.2 but extra-devels lists only version 0.1. What’s wrong here? Should I use the -f flag to force installation?

    • Forget that comment – I repeated the package installation from the Programmanager app and now it succeeded.

  15. the download is not resumable … was a slight inconvenience 😦

  16. Windows XP installation is failing when in postinstall and trying to extract .lzma files. Any other noticed the same ?

    • Can you repeat that problem ?

      • Yep, every time. One thing I found was that in postinstall.sh xtar tries to unpack .lzma and at least when I tried it manually, it cannot unpack those.

      • Hmm. you probably mean ‘xxtar’ in postinstall.sh as ‘xtar’ is
        much different thing.

        lzma files are extracted in postinstall by the command line:

        lzma -dc | tar xmf –

        If you run (one of) these from command line (using madde msys terminal)
        … for example:

        username $ cd /
        username $ lzma -cd postinstall.done/libcrypt-1.1_1-2-msys-1.0.11-dll-0.tar.lzma | tar -xmf –

        what does it report to the terminal window ?

  17. Yes, it’s xxtar. I cannot use madde msys as the installation fails in postinstallation -> Ctrl-C and returns to install tool where only option is to cancel -> removes whole installation.

    • Ok. That makes it a bit harder…

      You probably could test, as at that point there should be functional
      msys environment at the extraction point — with file manager
      madde terminal should open when click madde.bat at the extraction
      directory… (before canceling installation and losing extracted files)

      Also, the exact messages on the cmd window would be helpful.

  18. […] also be updated today. If you don’t have the SDK and want to start coding, get it here. For MADDE users, we are looking at possibly updating the MADDE tech preview to PR 1.1 […]

  19. […] 5, 2010 @ 15:02 › danielwilms ↓ Leave a comment A month ago, we offered a first tech preview of a new cross-compilation toolkit for Maemo5. Madde is a command line tool, which makes the […]

  20. […] month ago, we offered a first tech preview of a new cross-compilation toolkit for Maemo5. Madde is a command line tool, which makes the […]

  21. […] di Maemo Application Development and Debugging, Γ¨ un toolkit di cross-compilation sviluppato dal Maemo Developmet Team per […]


Leave a reply to Madde tech preview – update | Maemo Nokia N900 Cancel reply

Blog at WordPress.com.
Entries and comments feeds.