6.37.1. Installation of GRUB
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.
Start by applying the following patch to allow for better drive
detection, fix some GCC 4.x issues, and provide better SATA support
for some disk controllers:
patch -Np1 -i ../grub-0.97-disk_geometry-1.patch
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
Prepare GRUB for compilation:
./configure --prefix=/usr
Compile the package:
make
To test the results, issue:
make check
Install the package:
make install
mkdir -v /boot/grub
cp -v /usr/lib/grub/i386-pc/stage{1,2} /boot/grub
Replace i386-pc
with whatever
directory is appropriate for the hardware in use.
The i386-pc
directory contains a
number of *stage1_5
files, different
ones for different file systems. Review the files available and
copy the appropriate ones to the /boot/grub
directory. Most users will copy the
e2fs_stage1_5
and/or reiserfs_stage1_5
files.