The webserver on a ‘phone

Yesterday I successfully built Apache APR and HTTPD (the webserver) on my pocket-‘puter, a Nokia N900, also known as a smartphone.

The prerequisite to that was to install a development environment.  I wanted something native running on maemo, and while the tools don’t run entirely smoothly (apt-get fails to find many of the packages), a bit of googling found me ossguy’s page leading to the necessary packages and repositories to set up a working GNU toolchain.

Having installed gcc and a couple of other packages from the repos, building APR, APR-util and HTTPD went mostly smoothly.  For the record (and I may update this post when I’ve figured out more about it):

  1. Configure’s detection of grep and egrep fails, despite both utilities being available in standard places and working fine.  This may be an artifact of the GNU-toolchain-derived configure script’s syntax failing with the “ash” shell.  As a workaround I removed the broken detection and replaced in each configure script with
  2. There were a number of assembler warnings.  To be investigated.
  3. APR-UTIL failed the xlate test.  This may mean that iconv is not available but APR_HAVE_ICONV is incorrectly detected/set.  I recollect a similar issue with OpenSolaris, and I suspect a bug in the configure/build scripts.
  4. A few extra prerequisites were required, like zlib-dev for mod_deflate.

All in all, remarkably straightforward, and I was much surprised to see only the one failure from the test suite.  The webserver is up and running, and in future I expect to treat it the same as any other dev-platform server.

Furthermore, if it’s that easy on Maemo, I’d expect it to be similarly straightforward on other ARM/Linux platforms such as Android.

Posted on December 1, 2010, in apache, ARM, maemo. Bookmark the permalink. Leave a comment.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: