There are 7 parts to this article:
Part 1 – Gentoo on SPARC – Booting the Install CD
Part 2 – Gentoo on SPARC – Creating the Filesystems
Part 3 – Gentoo on SPARC – Copying Initial System, Portage, and Distfiles
Part 4 – Gentoo on SPARC – Creating the Kernel
Part 5 – Gentoo on SPARC – Getting Silo Installed
Part 6 – Gentoo on SPARC – Initial Logon
Part 7 – Gentoo on SPARC – Final Configuration
Let’s chroot into the new filesystem and set up the environment:
livecd distfiles # mount -t proc none /mnt/gentoo/proc livecd distfiles # chroot /mnt/gentoo /bin/bash livecd / # livecd / # env-update; source /etc/profile >>> Regenerating /etc/ld.so.cache... * Caching service dependencies...livecd / # livecd / # |
Set up the timezone:
livecd / # ls /usr/share/zoneinfo/US Alaska Arizona East-Indiana Hawaii Michigan Pacific Aleutian Central Eastern Indiana-Starke Mountain Samoa livecd / # livecd / # ln -sf /usr/share/zoneinfo/US/Pacific /etc/localtime livecd / # |
Set up the filesystem configuration in fstab:
livecd / # cat /etc/fstab # /dev/sda2 none swap sw 0 0 /dev/sda1 / ext3 noatime 0 1 /dev/cdroms/cdrom0 /mnt/cdrom auto noauto,user 0 0 none /proc proc defaults 0 0 none /dev/shm tmpfs nodev,nosuid,noexec 0 0 |
Now, we need to install the kernel sources using emerge:
livecd / # livecd / # emerge sparc-sources Calculating dependencies ...done! >>> emerge (1 of 2) app-admin/addpatches-0.2 to / *** Adjusting cvs-src permissions for portage user... >>> Unpacking source... >>> Source unpacked. >>> Test phase [not enabled]: app-admin/addpatches-0.2 >>> Install addpatches-0.2 into /var/tmp/portage/addpatches-0.2/image/ category app-admin >>> dobin: making /usr/portage/app-admin/addpatches/files/addpatches executable. .. man: prepallstrip: strip: strip: >>> Completed installing into /var/tmp/portage/addpatches-0.2/image/ >>> Merging app-admin/addpatches-0.2 to / --- /usr/ --- /usr/bin/ >>> /usr/bin/addpatches >>> Regenerating /etc/ld.so.cache... * Caching service dependencies...>>> app-admin/addpatches-0.2 merged. >>> clean: No packages selected for removal. >>> emerge (2 of 2) sys-kernel/sparc-sources-2.4.27 to / >>> md5 src_uri ;-) linux-2.4.27.tar.bz2 . . . >>> /usr/share/doc/sparc-sources-2.4.27/patches.txt.gz * After installing a new kernel of any version, it is important * that you have the appropriate /etc/modules.autoload.d/kernel-X.Y * created (X.Y is the first 2 parts of your new kernel version) * For example, this kernel will require: * /etc/modules.autoload.d/kernel-2.4 * * For users with an Enterprise model Ultra 1 using the HME network interface, * please emerge the kernel using the following command: * * USE=ultra1 emerge sparc-sources * >>> Regenerating /etc/ld.so.cache... * Caching service dependencies...>>> sys-kernel/sparc-sources-2.4.27 merged. >>> Recording sys-kernel/sparc-sources in "world" favorites file... >>> clean: No packages selected for removal. >>> Auto-cleaning packages ... >>> No outdated packages were found on your system. * GNU info directory index is up-to-date. livecd / # |
The default configuration (.config) worked well on both systems, but we still peeked with menuconfig:
livecd / # cd /usr/src/linux livecd linux # make menuconfig rm -f include/asm ( cd include ; ln -sf asm-sparc64 asm) make -C scripts/lxdialog all make[1]: Entering directory `/usr/src/linux-2.4.27-sparc/scripts/lxdialog' gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -DLOCALE -DCURSES_LOC="< ncurses.h>" -c -o checklist.o checklist.c gcc -Wall -Wstrict-prototype . . . | Do you wish to save your new kernel configuration? | | < Yes > < No > | Saving your kernel configuration... *** End of Linux kernel configuration. *** Check the top-level Makefile for additional configuration. *** Next, you must run 'make dep'. livecd linux # |
Compile and install the kernel and modules:
livecd linux # make dep && make clean vmlinux image modules modules_install gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -o scripts/mkdep scripts/ mkdep.c make -C arch/sparc64/kernel check_asm make[1]: Entering directory `/usr/src/linux-2.4.27-sparc/arch/sparc64/kernel' sparc64-linux-gcc -E -D__KERNEL__ -I/usr/src/linux-2.4.27-sparc/include -P tmp.c -o tmp.i /bin/sh ./check_asm.sh -data task tmp.i check_asm_data.c /bin/sh ./check_asm.sh -data mm tmp.i check_asm_data.c /bin/sh ./check_asm.sh -data thread tmp.i check_asm_data.c sparc64-linux-gcc -D__KERNEL__ -I/usr/src/linux-2.4.27-sparc/include -m64 -mcmod el=medlow -ffixed-g4 -S -o check_asm_data.s check_asm_data.c /bin/sh ./check_asm.s . . . cd /lib/modules/2.4.27-sparc; \ mkdir -p pcmcia; \ find kernel -path '*/pcmcia/*' -name '*.o' | xargs -i -r ln -sf ../{} pcmcia if [ -r System.map ]; then /sbin/depmod -ae -F System.map 2.4.27-sparc; fi livecd linux # livecd linux # cp arch/sparc64/boot/image /boot/kernel-2.4.27 livecd linux # livecd linux # cp System.map /boot livecd linux # exit |
In the next installment of this article, we will set up silo.
There are 7 parts to this article:
Part 1 – Gentoo on SPARC – Booting the Install CD
Part 2 – Gentoo on SPARC – Creating the Filesystems
Part 3 – Gentoo on SPARC – Copying Initial System, Portage, and Distfiles
Part 4 – Gentoo on SPARC – Creating the Kernel
Part 5 – Gentoo on SPARC – Getting Silo Installed
Part 6 – Gentoo on SPARC – Initial Logon
Part 7 – Gentoo on SPARC – Final Configuration