OK, I've found the real cause of the errors which [EMAIL PROTECTED]
was seeing when linking 9xen kernels:

> v4parsecidr: undefined: memcpy in v4parsecidr
> _strayintrx: _ctype: not defined

In the definition of LIB= in the mkfile, if libc.a is listed before
libip.a, you get the above errors (for any kernel, not just xen ones).
This is because there are no direct references to libc.a functions
from the kernel itself, only from something in libip.a which was
added recently.  So the linker needs to see libip.a before libc.a
in order to know what references to resolve.

If you simply move libc.a after libip.a, it works fine without having
to change any source code.

I've now rebuilt all the 9xen*.gz kernels in /n/sources/xen/xen3
using the current Plan 9 kernel and nventi.  They work with Xen
3.0.x; no guarantees about 3.2.x but it's worth trying.

-- Richard


Reply via email to