Quick install info: Create a temporary directory to experiment in, e.g: mkdir -p ~/src/i2c-tmp ; cd ~/src/i2c-tmp Fetch and unpack the i2c code: wget -O i2c.zip https://gtoal.com/history.dcs.ed.ac.uk/archive/languages/imp77-tmp/gtoal/i2c.zip unzip -o i2c.zip This code *temporarily* uses my release of "ecce" for some housekeeping chores. It is not installed automatically (mainly because our testers may have their own - possibly slightly different - copy of ecce already installed.) It can be compiled as follows: wget -O ecce.c http://ecce.sourceforge.net/ecce.c gcc -g -o ecce8 ecce.c - and then put it somewhere in your path, such as /usr/local/bin/ecce8 Note: ecce8 is 8-bit clean but without UTF8 support. If you want to edit UTF8 files with ecce, add a second copy, compiled with: gcc -g -DWANT_UTF8 -o ecce ecce.c Now check the INSTALL.sh script, which will create some symbolic links in /usr/local to files in this current (i2c-tmp) directory, and when you're happy that this is OK on your system, type: sudo ./INSTALL.sh Read the README-I2C-MANUAL.txt file before you use the compiler. This is *PRE-RELEASE* and there are lots of caveats.