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

Reply via email to