Author Topic: More Developers...  (Read 24673 times)

speculatrix

  • Administrator
  • Hero Member
  • *****
  • Posts: 3707
    • View Profile
More Developers...
« Reply #15 on: June 22, 2005, 06:13:04 am »
Quote
Embedded Linux: Hardware, Software, and Interfacing
by Craig Hollabaugh

http://tinyurl.com/7l2ca
Gemini 4G/Wi-Fi owner, formerly zaurus C3100 and 860 owner; also owner of an HTC Doubleshot, a Zaurus-like phone.

kopsis

  • Sr. Member
  • ****
  • Posts: 329
    • View Profile
    • http://kopsisengineering.com
More Developers...
« Reply #16 on: June 22, 2005, 08:20:06 am »
One of the barriers to "development" on the Zaurus is that there are different kinds of development. Are we talking kernel development? ROM development? Application development? And in each one of those categories there are subcategories -- for example there's console app development, Qt app development in C++, Qt app development in Python, X11 app development, GPE app development, etc.

For each group of developers there's a substantial collection of "tribal" knowledge that can be really hard for beginners to come by. Yes, it's possible for a motivated individual to pick up the knowledge they need on their own, but every hour they have to spend learning is one less hour they'll be able to spend developing. And one has to wonder how much time will they spend reinventing the wheel or wandering down dead-end trails?

The good news is that for each type of development there are some educational resources available and quite a few people willing to help. The bad news is that there are few higher level roadmaps. So the question an aspiring developer needs to ask is not "how do I learn Zaurus development" but "I want to create ________ for the Zaurus; where should I start?"

raybert

  • Full Member
  • ***
  • Posts: 233
    • View Profile
More Developers...
« Reply #17 on: June 22, 2005, 11:12:16 am »
Newbie developers should start by checking the ZUG FAQs...

There's a Programming topic in the Unofficial Zaurus FAQ which provides some good high-level overviews:

  https://www.oesf.org/index.php?title=Programming

The HOWTO links in the FAQ are dead (referring to the defunct docs.zaurus.com) but all the HOWTOs are mirrored on the ZUG.  (Go to ZUG main page, look on left under "Zaurus Resources".)  Here's a direct link to the "Developing HOWTO" page with lots of good info including: how to set-up the cross compiler, how to develop for Qt, **how to create IPKGs**, etc....

  https://www.oesf.org/index.php?title=Developing

This was all I had (and needed, for the most part) when I started developing.  (Of course, I've been an SE for ~18 years and had familiarity with Linux and Unix, so YMMV.  

These FAQs and HOWTOs have essentially served as Zaurus Development 101 for quite some time now.  Apparently they've been forgotten by many.

~ray

koen

  • Hero Member
  • *****
  • Posts: 1008
    • View Profile
    • http://dominion.thruhere.net/koen/cms/
More Developers...
« Reply #18 on: June 22, 2005, 12:19:32 pm »
Quote
Programming for the Z is pretty much the same as programming for linux afaik, except for the unique directories/locations that it wants things.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=85243\"][{POST_SNAPBACK}][/a][/div]

Only if the whole universe revolves around Qtopia, which it doesn't.
Forums are not bugtrackers!!! Smart questions
Ångström release team
iPAQ h2210, iPAQ h5550, iPAQ hx4700, Zaurus SL-C700, Nokia 770, all running some form of GPE
My blog

euroclie

  • Full Member
  • ***
  • Posts: 205
    • View Profile
    • http://
More Developers...
« Reply #19 on: June 22, 2005, 01:14:25 pm »
Quote
Only if the whole universe revolves around
Qtopia, which it doesn't.
Well, that's right, there are plenty of alternative to Qtopia.

<mode rant=ON>
And IMHO this is the reason why, basically, the software suck on the Zaurus: too many different ROMs/interfaces, so people reinvent the wheel every other day. Choice is good, and it's a marvel to see how the Zaurus devices can be tweaked and customized to everyone's taste... but alas, it also means a serious lack of software when compared to the other PDA available (PalmOS, Symbian, PPC).

It's great to see that Sharp makes some efforts to provide a development solution (by sticking to Qtopia), but unfortunately not everyone loves Qtopia, and the Zaurus software has become so segmented that it's nothing more than a niche market on any given ROM/device...

There are almost no commercial (as in 'quality' vs. 'alpha/beta stage') applications. Where are the business tools (spreadsheets/wordprocessor/pdf)? Where are the simple and efficient PIM applications? The bundled applications are pretty much limited, and impressively slow to run even on the more recent Zauruses. Replacement PIM apps are available, sure, like KaPI/KoPI, but they are not faster than the original ones, and their complexity make them more suited to a big screen on a Linux laptop than on our tiny loved PDAs.

As mentioned earlier in this thread, there are quite a lot of FAQs and HOWTOs out there, but sadly a lot of material has become unreachable because Sharp stopped caring about the "rest of the world" (read: outside of Japan), and I suspect that a good deal of interesting things are in Japanese only...

But with some patience, everyone can find the right docs and pointers, and start coding simple Qtopia (or whatever interface you like) applications. It's not easy, not time-efficient to gather the docs first, but it can be done, and that's a good thing!

I'm seriously considering writing my own datebook application (because I have specific needs not handled by the available stuff, and because it's a great opportunity for me to try learning a new development environment), but it's a real shame to have to build your own tools yourself, because that means that most people (those without programing knowledge or skills) can't do that, and will be disappointed by the Zaurus, should they purchase one without thinking when they see such a beautiful piece of hardware...
<mode rant=OFF>
Patrick

cstrand1

  • Newbie
  • *
  • Posts: 41
    • View Profile
    • http://www.swedes5.com
More Developers...
« Reply #20 on: June 22, 2005, 02:50:53 pm »
I will add my .02.

I would like to develop for my Zaurus. (opie + 5600).  My frustration with getting going on it is, the development docs that are out there.  My current system that I have to work with is a HP Omnibook 6000 w/256mb ram and a 20GB HD (FC3).  Now, reading the docs about using Bitbake, there is no way my system could handle that.

Now, what I have done is the following.  I followed the setup instructions on http://opie.handhelds.org/cgi-bin/moin.cgi/DocsHowTo and build opie on my laptop.  It works and I can can write applications and use them under qvfb.  What I am not sure about is what compiler to use to compile for the arm.  Can I use 2.95?  or should I build a cross-compiler for the arm from sources?  What would be nice, IMO, if there was a current toolchain that I could download for compiling on the arm.

As to learning, the way I did it was get the sources, which I got from the link above, and went through some of the code.  Compiled it, changed it and that way I got a feel for it.

Chuck
SL-5600 PXA250
Opie 3.5.4/GPE 3.5.4 on SD (altboot)
Sandisk 1GB SD
Sandisk Ultra II 256MB CF
Ambicom WL1100C

koen

  • Hero Member
  • *****
  • Posts: 1008
    • View Profile
    • http://dominion.thruhere.net/koen/cms/
More Developers...
« Reply #21 on: June 22, 2005, 03:26:53 pm »
Quote
I would like to develop for my Zaurus. (opie + 5600).  My frustration with getting going on it is, the development docs that are out there.  My current system that I have to work with is a HP Omnibook 6000 w/256mb ram and a 20GB HD (FC3).  Now, reading the docs about using Bitbake, there is no way my system could handle that.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=85373\"][{POST_SNAPBACK}][/a][/div]

Since a few weeks bitbake only uses 20MB for the package graph (instead of >1GB) and a typical build is about 6GB, so your laptop has a reasonable chance to build everything.
Forums are not bugtrackers!!! Smart questions
Ångström release team
iPAQ h2210, iPAQ h5550, iPAQ hx4700, Zaurus SL-C700, Nokia 770, all running some form of GPE
My blog

ken

  • Sr. Member
  • ****
  • Posts: 274
    • View Profile
More Developers...
« Reply #22 on: June 22, 2005, 03:35:34 pm »
Quote
The HOWTO links in the FAQ are dead (referring to the defunct docs.zaurus.com)

fixed
SL-6000L Sharp ROM 1.12 - 1G SD (RiDATA) - 2G Microdrive (Hitachi)
TRENDnet TE-CF100 10/100 (no drivers needed) AmbiCom CF56M-EZ modem (no drivers needed)

ken

  • Sr. Member
  • ****
  • Posts: 274
    • View Profile
More Developers...
« Reply #23 on: June 22, 2005, 03:55:33 pm »
Quote
I would like to develop for my Zaurus. (opie + 5600).  My frustration with getting going on it is, the development docs that are out there.  My current system that I

I would point you to raybert's reply:

https://www.oesf.org/index.php?title=Programming
https://www.oesf.org/index.php?title=Developing

both of which the links are now fixed
SL-6000L Sharp ROM 1.12 - 1G SD (RiDATA) - 2G Microdrive (Hitachi)
TRENDnet TE-CF100 10/100 (no drivers needed) AmbiCom CF56M-EZ modem (no drivers needed)

kopsis

  • Sr. Member
  • ****
  • Posts: 329
    • View Profile
    • http://kopsisengineering.com
More Developers...
« Reply #24 on: June 22, 2005, 04:42:09 pm »
Quote
And IMHO this is the reason why, basically, the software suck on the Zaurus: too many different ROMs/interfaces, so people reinvent the wheel every other day. Choice is good, and it's a marvel to see how the Zaurus devices can be tweaked and customized to everyone's taste... but alas, it also means a serious lack of software when compared to the other PDA available (PalmOS, Symbian, PPC).
[div align=\"right\"][a href=\"index.php?act=findpost&pid=85360\"][{POST_SNAPBACK}][/a][/div]

The same can be said for Linux on the desktop. If you're developing a Linux app, which distro do you target? Debian ... ok, which flavor -- pure (stable or unstable), Ubuntu, Morphix, Knoppix? Pure Debian -- do you go for stable or unstable? RedHat ... ok, Enterprise or Fedora Core (and which version of Fedora)? Got your distro figured out, great now which app framework? KDE, Gnome, Qt, WxWindows (or whatever they changed the name to), or something more basic like GTK or even straight X11? Which libraries is it safe to use? Which versions?

I'm not saying freedom of choice is bad (I'm very happy to have it) just that it comes with a high price (as most forms of freedom usually do). Windows and Mac developers have the luxury of a stable (in terms of rate of change) and well defined (you know that every single user will have a base set of libraries) target. If you bang out an OS X app following Apples's development guidelines, it's a pretty safe bet that every Mac owner in the world with your target version of OS X (or later) will be able to install and run it without difficulty. If you try to do the same for Linux you have to choose your target very carefully and even so it's unlikely you'll be compatible with more than 10% of the world's Linux boxes.

In the handheld world, the same is mostly true for Palm OS and Windows Mobile. The Linux mobile space is just as fragmented as the desktop and in fact the small number of Linux handhelds (relative to desktops) to begin with makes it even worse. If you're going to play in the Zaurus space you have to pick a camp and just accept the fact that your choice limits who can use what you develop. That's the very reason I've stayed with Sharp based ROMs despite the obvious technical superiority of solutions like OE. It's also why I try to use Python for app development whenever possible.

In the Linux world (desktop or handheld) there will never be "one ring to rule them all"

lpotter

  • Sr. Member
  • ****
  • Posts: 450
    • View Profile
    • http://qtopia.net
More Developers...
« Reply #25 on: June 22, 2005, 08:43:24 pm »
Software Engineer, Systems Group, MES, Trolltech
irc.freenode.net #qtopia
http://qtopia.net

speculatrix

  • Administrator
  • Hero Member
  • *****
  • Posts: 3707
    • View Profile
More Developers...
« Reply #26 on: June 23, 2005, 05:19:15 am »
I've owned a Z now for three months, been trying to write a qtopia program for it for two. Last night I finally managed it!

Getting a working cross-compiler wasn't too hard - so I was able to build command-line programs, and even talk to the serial devices.

I downloaded and built the qtopia-x11 stuff on my desktop, so I felt I knew roughly how it worked.

Getting even the example program in the downloaded cross-built qtopia-1.5 stuff built wasn't trivial.. I had to manually hack the Makefile it autogenerated.

I've got a similar setup at work on another suse92 machine, but it won't build the example.

Now, what I wished I'd done was use the knoppix-based live CD.

Anyway, to end this rambling... I don't think of myself as an idiot, but it ain't trivial to get started with qt for Z. I suspect it's made much harder because any recent linux distro is based on much newer versions than the antique gcc-2.95 etc of the Z. I even tried creating a full 2.95 environment  "chrooted", but quickly gave up.

It's a sad day when I have to admit two things: *IF* Palm survive long enough to start doing Palm-on-linux, and they do some up to date hardware, then I'm likely to go that way and drop the Z entirely. Secondly, I've realised I'm unlikely to stop using my palm t3, which is annoying as I was going to sell it to pay for all the Z accessories.
Gemini 4G/Wi-Fi owner, formerly zaurus C3100 and 860 owner; also owner of an HTC Doubleshot, a Zaurus-like phone.

omro

  • Hero Member
  • *****
  • Posts: 796
    • View Profile
    • http://
More Developers...
« Reply #27 on: June 23, 2005, 05:37:24 am »
Quote
Secondly, I've realised I'm unlikely to stop using my palm t3

Slightly off topic question from me, but why are you unlikely to stop using your palm? I had a zire and I couldn't get rid of it fast enough when I got my C1000.
Zaurus C-1000

speculatrix

  • Administrator
  • Hero Member
  • *****
  • Posts: 3707
    • View Profile
More Developers...
« Reply #28 on: June 23, 2005, 06:27:45 am »
Quote
Quote
Secondly, I've realised I'm unlikely to stop using my palm t3
but why are you unlikely to stop using your palm? I had a zire and I couldn't get rid of it fast enough when I got my C1000.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=85448\"][{POST_SNAPBACK}][/a][/div]

reasons to keep my T3
0) datebook5 (pimlico software) - I bought a license, it's a brilliant program, and so easy to use
1) games - I have a number of licensed games, and there's a huge choice
2) book readers - I have some DRM'd books I bought which seem to only work with PalmReader, er, eReader
3) trivial synchronisation
4) things just work

reasons I love my 860
0) the VGA display and the keyboard
1) the stability of the networking (bluetooth CF card problems aside)
3) its linux
4) serial, CF *and* SD slots
5) I can be arsed to learn to develop for it, but not for the palm
Gemini 4G/Wi-Fi owner, formerly zaurus C3100 and 860 owner; also owner of an HTC Doubleshot, a Zaurus-like phone.

omro

  • Hero Member
  • *****
  • Posts: 796
    • View Profile
    • http://
More Developers...
« Reply #29 on: June 23, 2005, 07:05:10 am »
Quote
things just work

As I grow older, I feel more and more that things should "just work". I factor this reason as the primary reason I ditched Windows and went Mac.

I love the hardware of the Sharp Zaurus a lot more than the software that runs on it. If Apple made a handtop computer, OQO sized perhaps, then I'll leave the Zaurus behind for it.

Despite all this, I see great promise in handheld Linux and things like OE, which is why I started this thread. I think we should encourage more developers and after reading all these posts, I still believe that by providing a central point that would allow total beginners to learn the skills from one place, rather than the "it's out there, just put some effort into finding it" mentality - more developers would be encouraged.

To be honest, the biggest failing I see with handheld linux isn't the operating system, it's the lack of decent goodies which run upon it. The average everyday user wants things that a developer doesn't. However, developers are often average everyday users that have made a leap. But if the general software isn't popular enough to make the hardware worth the effort (hence the failing of the 5500 in the UK, people thought it was fab for a PDA until they used the naff software and couldn't find anything decent to run on it).

Anyway this is all mixed in with another argument about how to make something popular enough for more people to have.
Zaurus C-1000