Today I got round to upgrading the Maemo build environment on my Debian home server from SDK 3.x to SDK 4.x, so that I could start building applications for my new N810 which is running ITOS 2008. And all I did was simply:
- Backup the old source build area from within scratchbox so that I had the hand customised Debian packaging files for packages I’d built under SDK 3.x.
- Shutdown scratchbox, remove all scratchbox Debian packages and delete /scratchbox.
- Follow the installation instructions for scratchbox, the new rootstraps and closed Nokia binaries.
- Copy back any potentially handy debian/control, debian/rules and debian/copyright files from my old source tree.
All this went very smoothly, and after which I downloaded the source to Hercules and followed the current build instructions for making a Debian package. This appeared to go well until I ran into a bunch of undefined references to pthread_*. I don’t recall any such problems with the same source under Maemo 3.x and a quick Googling suggests I may need to link with -lpthread. This sounds reasonable, however since the magic of dpkg-buildpackage, configure and friends does literally everything for me I’m not quite sure where to add this option. Perhaps configure should have guessed this is needed, or maybe the environment isn’t set up quite right. I suspect that the most likely cause is novice error, but in any case don’t anticipate it being too difficult to resolve.
More on this once I have the answer!