The Io language has a brand new build system. Gone is the static linking, Io is now dynamically linked. I believe the build system is far better than its predecessor.
It will need a couple of iterations to iron out a couple of problems. The detection of the dependencies for the bindings needs a small revision: it only checks for the libraries, not the header files. This is problematic on debian based system where, traditionally, a library X is in a package named libX and the header files in libX-dev.
If you want to experience Io on Dapper, you will have to do the following:
> sudo apt-get install build-essential libsqlite0-dev libpcre3-dev libfreetype6-dev freeglut3-dev libgmp3-dev libncurses5-dev libpng12-dev libtiff4-dev libevent-dev [...] > sudo ldconfig
To get the SGML binding working, you will have to get your hands dirty with libsgml. Here is how:
> wget http://www.hick.org/code/skape/libsgml/libsgml-1.1.4.tar.gz [...] > tar xfz libsgml-1.1.4.tar.gz [...] > cd libsgml-1.1.4 > ./configure [...] > make [...]
Before going any further, you need to edit the Makefile and change the first line of the install target from:
install -m 644 -o root -g root --directory /usr/local/include/sgml
into this:
install -o root -g root --directory /usr/local/include/sgml
install -m 644 -o root -g root include/Variant.h \
/usr/local/include/sgml/Variant.h
Don’t ask… Finally, to install libsgml in a relatively clean way, I suggest using checkinstall like this:
> sudo apt-get install checkinstall > sudo checkinstall
The stage is ready for Io:
> sudo apt-get install darcs [...] > darcs get http://www.iolanguage.com/darcs/Io [...] > cd Io > make
May the cloning begin!
technorati tags:iolanguage, ubuntu
Updated on 05/09/06: fixed typo, thanks to Jesse’s comment.

Tuesday, September 5th, 2006 at 3:31
Just a little snag I ran into — it should be:
sudo apt-get install build-essential
instead of:
sudo apt-get install build-essentials
Tuesday, September 5th, 2006 at 8:36
Thanks very much Jesse, I corrected the post.
Thursday, October 12th, 2006 at 21:24
…sorry to bother you but can you help me on how to build Io on windowsxp
Thursday, October 12th, 2006 at 21:28
Hi Ricardo,
I suggest you try the #io irc channel on freenode, or the Io mailing list. I am not a windows user so I will not be of much help to you.
Good luck.
Friday, October 27th, 2006 at 5:17
I’m on ubuntu edgy amd64. I’ve managed myself to build Io except for:
1) OpenGL addon complaints about:
In file included from source/IoGLUT.c:901:
source/IoGLUTconst.h:186: error: initializer element is not constant
source/IoGLUTconst.h:186: error: (near initialization for ‘ioGLUT_constTable[69].value’)
[...]
One of the offending lines is for example:
{”GLUT_BITMAP_HELVETICA_10″,(int)GLUT_BITMAP_HELVETICA_10},
Which is defined as follows in my system:
/usr/include/GL/freeglut_std.h:
#define GLUT_BITMAP_HELVETICA_10 ((void *) &glutBitmapHelvetica10)
2) If I omit the building of this addon, I get the executables but then io aborts with a segmentation fault. otoh io_static runs fine.
Any ideas?
Thank you in advance.
Cheers,
Carlos