Install the missing grub-pc-bin
grub-mkrescue did not work otherwise.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# x86 Bare Metal Examples
|
||||
|
||||
Dozens of minimal operating systems to learn x86 system programming. Userland cheat at: <https://github.com/cirosantilli/x86-assembly-cheat>
|
||||
Dozens of minimal operating systems to learn x86 system programming. Tested on Ubuntu 17.10 host. Userland cheat at: <https://github.com/cirosantilli/x86-assembly-cheat>
|
||||
|
||||
1. [**Getting started**](getting-started.md)
|
||||
1. [About](about.md)
|
||||
|
||||
21
configure
vendored
Normal file
21
configure
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# grub-pc-bin: without it, grub-mkrescue just fails, and you have no idea why!
|
||||
# We love you, GRUB.
|
||||
# https://superuser.com/questions/603051/grub-mkrescue-not-producing-bootable-image/973021#973021
|
||||
# https://github.com/cirosantilli/x86-bare-metal-examples/issues/5#issuecomment-377948357
|
||||
# https://wiki.osdev.org/Bare_Bones
|
||||
#
|
||||
sudo apt-get install \
|
||||
bochs \
|
||||
bochs-sdl \
|
||||
build-essential \
|
||||
gcc-multilib \
|
||||
gdb \
|
||||
gnu-efi \
|
||||
grub \
|
||||
grub-pc-bin \
|
||||
nasm \
|
||||
qemu \
|
||||
xorriso\
|
||||
;
|
||||
@@ -1,8 +1,8 @@
|
||||
# Getting started
|
||||
|
||||
Tested on Ubuntu 14.04 AMD64:
|
||||
Ubuntu:
|
||||
|
||||
sudo apt-get install bochs bochs-sdl build-essential gcc-multilib gdb gnu-efi grub qemu nasm xorriso
|
||||
./configure
|
||||
|
||||
Make all operating systems:
|
||||
|
||||
@@ -58,6 +58,10 @@ Now if you do:
|
||||
|
||||
you can test several examples with a single USB burn, which is much faster.
|
||||
|
||||
You can also try out the big image on QEMU for fun with:
|
||||
|
||||
qemu-system-i386 -hda big.img
|
||||
|
||||
You will also want to change the boot order to put the USB first from the F12 BIOS menu. This way you don't have to hit F12 like a madman every time.
|
||||
|
||||
TODO: boot sectors that load STAGE2 are not working with the big image chainloader. TODO why?
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
# GRUB
|
||||
|
||||
TODO not working: https://github.com/cirosantilli/x86-bare-metal-examples/issues/5#issuecomment-377948357
|
||||
|
||||
cd chainloader
|
||||
make run
|
||||
|
||||
|
||||
@@ -17,8 +17,6 @@ Or you can use `grub-mkrescue` to make a multiboot file into a bootable ISO or d
|
||||
|
||||
qemu-system-x86_64 -hda main.img
|
||||
|
||||
TODO: can't get it working anymore: <https://github.com/cirosantilli/x86-bare-metal-examples/issues/5#issuecomment-377948357>
|
||||
|
||||
## Introduction
|
||||
|
||||
<https://en.wikipedia.org/wiki/Multiboot_Specification>
|
||||
|
||||
Reference in New Issue
Block a user