Packages build, news and bugs

[ Thread Index | Date Index | More lists.tuxfamily.org/slitaz Archives ]


Hi all,

Here is a small report on my compilation work from last week.

I found a huge bug in the way packages was builded from januray, all
packages (the curent cooking one on mirror and so latest cooking) are
optimized for i686 machine. I'm not going to explain why and the
technical proplem who get us to that. But is is probably the cause of
kernel panic on some harware since the compilator produce specific
i686 code.

We was always using i486 machine type since iz provide wide harware
support as well as support for old harware. We do not use i386 machine
name since it is no longer support by Glibc. It may be confusing but
this machine name for GCC compiler is not the same than the kernel and
we use i486 from 1.0 with wide compatibility.

So I had to fix all that and rebuild the toolchain a few time to ensure
it's a native i486 toolchain that will produce i486 code and can
rebuilt itself. Founding this bug mean we must rebuild all 3000 package
one more time, so I use this oportunity to cross compile SliTaz by
default.

Cross compilation
-----------------
Cross compilation let us build package from for example a i686 machine
for an ARM machine. So we use the build system power and spec but
produce binrarie that will run on the target host system. In practice:
Tank is a i686 machine and we want to build binaries for i486, when
cross compiling we got this from gcc. wich is quiet clear I belive:

checking build system type... i686-slitaz-linux-gnu
checking host system type... i486-slitaz-linux-gnu

The goal is also to have everything ready to cross compile SliTaz for
ARM platform and natively buildable on an other machine type such as
64bites machine.

I'm not an expert in cross compiling and learnd a lot these days, if
you have any skills or knowledge to share, it would be greate. Also
cross compiling by default means fixing some packages, so any help is
welcome.

Packages size
-------------
One new thing I also introduce is a compilation flag for GCC wich
optimize packages for size. The option is -Os and we gain on all
packages wich means a lot of megs in the all distro! I dont have all
core packages builded yet, but I hope we will go back under 30Mb with
this new flag.

- Christophe

---
SliTaz GNU/Linux Mailing list - http://www.slitaz.org/


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/