From: Blaisorblade <bla...@ya...> - 2006-10-29 16:58:12
|
On Saturday 28 October 2006 13:21, Mitch wrote: > Hi Jeff, all, > > Sorry for the dealy but i've been out of the country. > > Anyhow i did some investigation and i've figured out the bug. > > Essentially if you try to compile a UML kernel on a 2.6.18.1 or above > *host* kernel > it will fail with the error messages shown (essentially > offsetof macro undefined) because between 2.6.18 and 2.6.18.1 that macro > in /usr/include/linux/stddef.h is now wrapped in a #ifdef __KERNEL__ . > However since UML doesn't build it's sources with that defined we get an > undefined macro and a build failure. Ok, we have one bug and one mistake on your part: 1) we should include <stddef.h> instead of <linux/stddef.h> in files using host headers (I don't have the error message at hand, so please handle this yourself, Jeff) 2) /usr/include/{linux,asm} being symlinks inside /usr/src/linux/include is an unsupported configuration since ages. #1 is still a valid bug because when a distribution will distribute glibc and kernheaders based on 2.6.18.1+/2.6.19 ones we'll break anyway. > So i'm partly right and partly wrong in my statement below. Yes i did > compile a guest UML kernel 2.6.18 fine on host kernel of 2.6.18, and i > believe i will be able to compile 2.6.18.1 and above also on a host > kernel of 2.6.18 but if i change my host kernel to 2.6.18.1 or above all > UML guest builds will fail. > > Can someone confirm they can build guest UML kernels on a host kernel >= > 2.6.18.1 ?? > > Thanks > M -- Inform me of my mistakes, so I can keep imitating Homer Simpson's "Doh!". Paolo Giarrusso, aka Blaisorblade http://www.user-mode-linux.org/~blaisorblade Chiacchiera con i tuoi amici in tempo reale! http://it.yahoo.com/mail_it/foot/*http://it.messenger.yahoo.com |