Hiawatha on Haiku

10 May 2010, 23:56
HaikuOS logo

The second alpha of the Haiku OS has been released. I downloaded a VM image on my MacBook Pro and tried compiling and installing Hiawatha on it. I had to do some little tricks to get it done, but I managed to get Hiawatha up and running on Haiku!

These are the things I did after downloading and unzipping the Hiawatha 7.2 source tarball:

  1. # cp /boot/common/share/libtool/config/config.* .
  2. Add '#include <sys/time.h>' to cgi.c.
  3. Add '#include <arpa/inet.h>' to libip.c.
  4. # ./configure --disable-ssl --disable-xslt --disable-monitor --prefix=/boot/home/hiawatha
  5. Edit Makefile and add '-lnetwork' to 'LIBS = ' on line 173.
  6. # make && make install
  7. # mkdir -p /boot/home/hiawatha/var/lib

If everything went well, Hiawatha is now installed in /boot/home/hiawatha. I had to disable SSL and XSLT support, because the required OpenSSL and XML/XSLT libraries were not present in the VM image. I have no idea yet if there are available as a package or something. But for an initial test it's not relevant, so I disabled those functionalities.

After starting Hiawatha, I pointed my browser to the IP address of the VM and there I saw Hiawatha's 'Congratulations' web page. I will do some more research in order to make Hiawatha 7.3 compile under Haiku without any tricks or code changing.

Tags: feature
by Hugo Leisink
Hugo Leisink
7 June 2010, 15:08
The new release (7.3) has better support for HaikuOS. No code changing is required to get Hiawatha compile under HaikuOS. Just a simple

# autoreconf -vif
# ./configure --disable-ssl --disable-xslt --disable-monitor --prefix=/boot/home/hiawatha
# make && make install

should do the trick. You probably still have to do a "mkdir -p /boot/home/hiawatha/var/lib" to get Hiawatha running.
on Haiku r37042
7 June 2010, 15:51
I had to add --build=i686-pc-haiku to get it to build on revision 37042 of Haiku.

Maybe something has changed in the builds after R1 Alpha 2.
Hugo Leisink
7 June 2010, 15:54
I forgot to mention the 'autoreconf -vif' command which is required first. I'll take a look at your --build option.