Hey,
as you may be interested. I've managed to compile the new gcj-4.3 for i386.
The mips version of this compiler is still compiling (since a week now). With
this new compiler version, I have compiled freenet as static i386-binary
including all optimizations. Here are the file sizes:
6768k freenet-ext-i486-linux-gnu.so
6136k freenet-i486-linux-gnu
11136k freenet-standalone-i486-linux-gnu
24392k freenet-static-i486-linux-gnu
With external *.dll and *.so, the file size shrink a bit - but that's
currently not running (some exception):
4316k freenet-ext-i486-linux-gnu.so
6136k freenet-i486-linux-gnu
8684k freenet-standalone-i486-linux-gnu
21940k freenet-static-i486-linux-gnu
Note: freenet-i486 pulls in freenet-ext*.so. freenet-standalone has
freenet-ext*.so compiled in. Both need the libgcj.so.90 which is quite large
(32Mb). freenet-static* is linked against libgcj.a - so you do not need any
java-stuff to install:
sven-ola at pcbenq:/usr/src/freenet/bin$ ldd freenet-static-i486-linux-gnu
linux-gate.so.1 => (0xffffe000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb7f9d000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb7f76000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7f5e000)
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0xb7f55000)
libz.so.1 => /usr/lib/libz.so.1 (0xb7f41000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7f3d000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7dfc000)
/lib/ld-linux.so.2 (0xb7fbe000)
As usual, you'll find some explanations, the binaries and the debian packages
for gcc-4.3/gcj-4.3 as well as the libgcj.a file there (note, that libgcj.a
is never available through debian install, because the package maintainers
disabled -static compilation):
http://download.berlin.freifunk.net/sven-ola/freenet/
As a result: I'm confident now, that one can manage to run freenet on an
embedded box with at least 64Mb of RAM.
// Sven-Ola