Details on this package are located in Section 10.69.2, “Contents of GRUB.”
The GRUB package contains the GRand Unified Bootloader.
By default, GRUB doesn't support ext2 filesystems with 256-byte inodes. Fix this by applying the following patch:
patch -Np1 -i ../grub-0.97-256byte_inode-1.patch
GRUB has an issue where it sometimes doesn't detect the disk
geometry correctly when used with Linux 2.6, resulting in the error
message Error 24: Attempt to access block
outside partition
. The following patch contains a fix for
this issue as well as various fixes for raid controllers and
support for the new Intel Mac:
patch -Np1 -i ../grub-0.97-fixes-1.patch
This package is known to have issues when its default optimization
flags (including the -march
and
-mcpu
options) are changed. If any
environment variables that override default optimizations have been
defined, such as CFLAGS
and CXXFLAGS
, unset them when building GRUB.
Prepare GRUB for compilation:
CC="${CC} ${BUILD32}" ./configure --prefix=/usr \ --build=${CLFS_HOST} --host=${CLFS_TARGET}
Compile the package:
make
Install the package:
make DESTDIR=${CLFS} install mkdir -v ${CLFS}/boot/grub cp -v ${CLFS}/usr/lib/grub/*/stage{1,2} ${CLFS}/boot/grub
The directory in ${CLFS}/usr/lib/grub
(its name depends on your arch) contains a number of *stage1_5
files, different ones for different
file systems. Review the files available and copy the appropriate
ones to the ${CLFS}/boot/grub
directory. Most users will copy the e2fs_stage1_5
and/or reiserfs_stage1_5
files.
Details on this package are located in Section 10.69.2, “Contents of GRUB.”