UCLX is an executable file
compressor , for ARM base linux systems. I wrote it for my
Zaurus,
but it should work on every ARM linux systems,
like the IPAQ..
It works like UPX on
Linux. Program are compressed, and they transparently decompress
on execution. At the cost of a little lost of speed of execution, which
is most of the time, unnoticeable...
It give very good compression
ratios, in general better than gzip.
For example:
zmame executable orig. size ---> 13.701.876 bytes
compressed with UCLX (level 10) -->
3.250.162 (23.7 % of orig. size)
another example ? ok...
opera executable (the one in the sharp rom) orig.size
--> 2.892.256 bytes
compressed with UCLX (level 10) --> 1.055.653
bytes (36.5 % of orig.size)
Decompression is very fast, so
you can compress all your executable on your Zaurus to economize your
precious RAM...!!
UCLX
compressed file , are first decompressed in /tmp/
directory, then the temporary file is deleted while it is
executed..
It proceed exactly like UPX do for decompressing executable on Linux,
this way has been proven to be stable, well working.
You can set the UCL
environnement string, to decompress temporary file to another place,
for
example in your .bashrc
put--> set UCL=/mnt/cf/temp/
to decompress temporary file
to compactflash instead of /tmp/ dir, but in general it is not
needed...
the syntax to use UCLX is very
simple:
for compression: uclx -z file
level (level is between 1 to 10)
for decompression: uclx -d file
here is UCLX Zaurus executable:
uclx_arm
here is UCLX x86 executable:
uclx_i386
with the x86 executable you
can compress you Zaurus executable, on your computer, which is usefull
for big executable that are slow
to compress... then you just
transfer them to you Zaurus once compressed...
here is the UCLX source code:
uclx_src.tgz
UCLX and its sourcecode is free,
so you can use it in your projects, just send me an email...
(interzone23@free.fr)