Installing Io

I am currently installing Io to get ready for week 2 of Seven Languages in Seven Weeks.

I’m on Mac OS X Snow Leopard and i have the very excellent homebrew by Max Howell and there is a recipe for Io. So it should be as simple as:

brew install io

It has downloaded and is currently installing cmake, which is a dependency. That’s taking a while.

Aha, now it is doing libgsml … that was quick.

Now it’s cloning io from and using cmake to install it.

Done! The whole process took 17 minutes.

But, oh dear!

$ io
dyld: Library not loaded: libbasekit.dylib
  Referenced from: /Users/aimee/Developer/bin/io
  Reason: image not found
zsh: trace trap  io

I’m going to post this up and see if someone knows the answer. I’ll update here once i have it working.


Thanks to Evadne for pointing me to Installing Io on my Mac where i got the clue to make this work.

Since i installed Io with homebrew, it has gone into /Users/aimee/Developer for me. I need to tell it to find the dyld libbasekit library in the same place.

I use zsh so this just needs to go in my .zshrc file:


Now we’re all set!

$ io
Io 20090105
Io> "Hi ho, Io" print
Hi ho, Io==> Hi ho, Io

Now i’m ready for monday! :)

Update 2

I since found out that changing my dynamic library broke gitx for me. So i’m doing it this way instead:

alias io='DYLD_LIBRARY_PATH=~/Developer/lib ~/Developer/bin/io'

Now everything works :)


7 comments on “Installing Io

  1. I’ve just been through the same install process, luckily it worked fine for me, took roughly the same amount of time as your install, but then opening Io presented me with an interactive terminal similar to Ruby.

    $ io
    Io 20090105
    ==> nil

    • Excellent, your setup must have already configured the dyld library, which was the one step i was missing. We’re all good now :)

  2. I had this too, on Debian. (A gandi virtual server, for those interested).

    It turns out that the compilation stage invoked by make does, in fact, build the required libraries and does copy them into the required location. It just doesn’t rebuild your library cache. So if you do that manually, e.g. with

    sudo ldconfig

    then you’re all set.

    As a side note, the compilation/installation phase also builds a binary called io_static, and you can use that instead.

    • Good, thank you for the additional information for those installing on Debian flavoured Linux.

    • I love how we’re all sharing our findings here. This is so useful to work as a group, and also for other people who will encounter the same problems in the future. Thanks Evadne!

  3. I could not get the version of Io I downloaded from to compile on my Ubuntu machine:

    Ubuntu 11.04
    Linux roger 2.6.38-10-server #46-Ubuntu SMP Tue Jun 28 16:31:00 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

    However, I used this version from Jeremy Cowgar which worked fine (I had all the required libraries already installed):

    git clone git:// io
    cd io/build
    cmake ..
    sudo make install
    sudo ldconfig

    roger@roger:~$ io
    Io 20090105

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 )

Twitter picture

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

Facebook photo

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

Google+ photo

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

Connecting to %s