<li><b>GNU binutils</b>: as I'm writing this, the latest binutils version is 2.19.1, which
I'll be using in this tutorial. get it from <atarget="_blank"href="http://ftp.gnu.org/gnu/binutils/">here</a>.</li>
<li><b>GCC</b>:as I'm writing this, the latest GCC version is
4.3.3, which I'll be using for this tutorial. Download it from <atarget="_blank"href="http://gcc.gnu.org/mirrors.html">here</a> after choosing a suitable mirror.</li>
<li><b>Newlib</b>: as I'm writing this, the latest official Newlib version is 1.17.0, which I'll be using for this tutorial.
Download it from <atarget="_blank"href="ftp://sources.redhat.com/pub/newlib/index.html">here</a>.</li>
<li>The tutorial assumes that you're using bash as your shell. If you use
something else, you might need to adjust some shell-specific commands. </li></ul></p>
<p>You need some support programs/libraries in order to compile the toolchain. To install them:</p>
<li><code>-DPREFER_SIZE_OVER_SPEED -D__OPTIMIZE_SIZE__</code>: compile Newlib for size, not for speed (these are Newlib specific).</li>
<li><code>-Os -fomit-frame-pointer</code>: tell GCC to optimize for size, not for speed.</li>
<li><code>-D__BUFSIZ__=256</code>: again Newlib specific, this is the buffer size allocated by default for files opened via fopen(). The default is 1024, which I find too much
for <b>eLua</b>, so I'm using 256 here. Of course, you can change this value.</li></ul></p>
<p>Now you can finally enjoy your i386 toolchain, and compile <b>eLua</b> with
it :) After you do, you'll be able to boot <b>eLua</b> directly on your PC, as
described <ahref="tut_bootpc.html">here</a>, but you won't need to download the ELF file from the <b>eLua</b> project page, since you just generated it using your own toolchain!
If you need further clarification, or if the above instructions didn't work for you, feel free to <ahref="overview.html#contacts">contact us</a>.</p>