Gentoo Archives: gentoo-sparc

From: Kumba <kumba@g.o>
To: gentoo-sparc@l.g.o
Subject: Re: [gentoo-sparc] Kernel 2.6.x config for SUN Blade 100
Date: Sun, 30 Oct 2005 23:34:38
Message-Id: 43655850.70204@gentoo.org
In Reply to: Re: [gentoo-sparc] Kernel 2.6.x config for SUN Blade 100 by jim@amarooas.com.au
jim@××××××××××××.au wrote:
> > This is about building a kernel for sunblade 100 but remember I am not on > gentoo, and am building upstream sources. > > Maybe your build system takes care of all this stuff for you?
The "build system" used for source trees used in portage primarily handles unpacking, patching, and installing to /usr/src. After that, it's up to the user to build the kernel themselves. We have an optional utility, genkernel, for automating the kernel build system, but it's more commonly found in the x86-side of things, and more used for building release media.
> The main thing is that a .config is not needed, as it is generated from the > supplied sources and adapts itself to the build platform. It is OK for sunblade > 100 "out of the box" subject to the following changes. Following updates and > corrects previous posts done from memory
The .config file is actually generated by menuconfig after it runs. It shouldn't exist in a properly cleaned tree (i.e., make mrproper). It's generally created from the defconfig files that (iirc) are found in the arch/<arch> directory under the kernel tree when the user selects it.
> In the end I got 2 errors. > > drivers/sbus/char/envctrl.c:41: error: static declaration of 'errno' > follows non-static declaration > include/linux/unistd.h:4: error: previous declaration of 'errno' was here > > and the "patch" actually just edit the file to remove that line: > > drivers/sbus/char/envctrl.c > -static int errno; > +//static int errno; > > Did same for drivers/sbus/char/bbc_envctrl.c > > That is quite useless except to quickly continue the building. The end result is > a warning about those two modules during make modules_install. > > WARNING: /lib/modules/2.6.13.4/kernel/drivers/sbus/char/envctrl.ko needs unknow > n symbol errno > WARNING: /lib/modules/2.6.13.4/kernel/drivers/sbus/char/bbc.ko needs unknown sy > mbol errno
It sounds like drivers/sbus/char/envctrl.c needs a uniquely-named errno variable, or someone should check to see if the one imported from unistd.h is usable in that context. After for the symbol references, EXPORT_SYMBOL usually fixes those, but I do not believe it is applicable for variables.
> If you have to do this next step make sure you do not overwrite anything! > make install did not work. I just renamed them vmlinux-2.6.13.4 and > System.map-2.6.13.4 and copied .config to config-2.6.13.4 and then copied those > into /boot.
2.6 kernels can have the config built in and visible as /proc/config.gz. Also, you do use `make image` and not `make vmlinux` for sparc64 kernels, right?
> and ran yaird from /boot > yaird --verbose --output=/boot/initrd.img-2.6.13.4 2.6.13.4
Initrd's are becoming somewhat deprecated by initramfs. There are a number of ways to build/use this, though, so it can be a little bit trickier than an initrd. --Kumba -- Gentoo/MIPS Team Lead Gentoo Foundation Board of Trustees "Such is oft the course of deeds that move the wheels of the world: small hands do them because they must, while the eyes of the great are elsewhere." --Elrond -- gentoo-sparc@g.o mailing list

Replies

Subject Author
Re: [gentoo-sparc] Kernel 2.6.x config for SUN Blade 100 jim@××××××××××××.au