Re: emdebian cross-tools
On Thu 27 Feb, Hakan Ardo wrote:
> On Wed, Feb 26, 2003 at 06:04:28PM +0000, Wookey wrote:
<snip>
> The idea is that maintainer by hand do:
>
> apt-get install toolchain-source
> cd gcc-avr-linux
> tpkg-update
> # Reslov all problems if any
> debrelease
>
> this because there will always be problems, and thus an automatic update
> wont work.
>
> >
> > right - this is excellent - I'm really beginning to like this
> > toolchain-source concept :-) If we can just agree on ways of decoupling it
> > all a little to deal with the versionning problems I think we can have
> > something really neat.
>
> OK, I'm leaving for a weeks vaction soon, so if you don't find any better
> solution here is what I sugests:
>
> I will releas a gcc 3.2.3 toolchain-source any second now. Try to build with
> thatone and then I'll split it into one -gcc and one -binutils
> toolchain-source package, and then we discuss the update procedures of
> testing and find a good solution with the people maintaining it. And if we
> realise that it won't do with the same version, and thus know which versions
> we need, we split on version as well.
<time passes>
OK - I built an arm toolchain with this a while back and finally got round
to testing it (well, Nick Bane did mostly). It seems to work fine for all
user space stuff, including a lot of C++ which is very good, but it won't
compile the 2.4.19-rmk4 arm kernel. We've tried it on a couple of
architectures both as a cross compiler and as _native_ compiler, and it
always stalls at "Posix conformance testing by UNIFIX" during the boot
messages.
Some more peerig through the entrails shows that it actually stops round
rest_init in linux/init/main.c/
/*
* We need to finalize in a non-__init function or else race conditions
* between the root thread and the init thread may cause start_kernel to
* be reaped by free_initmem before the root thread has proceeded to
* cpu_idle.
*/
static void rest_init(void)
{
kernel_thread(init, NULL, CLONE_FS | CLONE_FILES | CLONE_SIGNAL);
unlock_kernel();
current->need_resched = 1;
cpu_idle();
}
(prinks before 'cpu_idle' appear, but nothing after)
Rather than trying to debug this just yet it seemed sensible to try the
released version of 3.2.3 first, which is a couple of months after the
toolchain-source release you did above.
So to my question - finally. What's the proceedure for making a new
toolchain source package (I'm taking this route because it makes building
the cross-toolchain simpler, I think!). I've sucked the 3.2.3 tarball down.
How much fiddling and checking do I need to do to make a package that
should work? Or am I likely to mess things up?
Whilst I'm here - does anyone know what might cause this prob, or otherwise
have experience of 3.2.3 on arm?
If anyone else want to try these packages they are here at the moment:
http://www.aleph1.co.uk/armlinux/toolchain/
Once we have a set that are shown to work I'll put them in debian and in
emdebian.
Wookey
--
Aleph One Ltd, Bottisham, CAMBRIDGE, CB5 9BA, UK Tel +44 (0) 1223 811679
work: http://www.aleph1.co.uk/ play: http://www.chaos.org.uk/~wookey/
Reply to: