> 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:
> -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/22.214.171.124/kernel/drivers/sbus/char/envctrl.ko needs unknow
> n symbol errno
> WARNING: /lib/modules/126.96.36.199/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-188.8.131.52 and
> System.map-184.108.40.206 and copied .config to config-220.127.116.11 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-18.104.22.168 22.214.171.124
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.
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
firstname.lastname@example.org mailing list