limine-bootloader / limine

Modern, advanced, portable, multiprotocol bootloader and boot manager.
https://limine-bootloader.org
BSD 2-Clause "Simplified" License
1.79k stars 133 forks source link

Trying to build iso #158

Closed lonnietc closed 2 years ago

lonnietc commented 2 years ago

Hello,

I have downloaded the v2.83 binary releases from:

https://github.com/limine-bootloader/limine/tree/v2.83-binary

Then I set up a test directory:

iso-root/
     limine.sys
     limine.cfg

    boot/
          bg.bmp
          limine-cd.bin
          limine-eltorito-efi.bin
          test.elf

the test.elf is my test kernel.

The limine.cfg is the default "sample" limine.cfg and I tried to adjust my paths and names to match for a first attempt.

Then I ran:

xorriso -as mkisofs -b iso_root/boot/limine-cd.bin -no-emul-boot -boot-load-size 4 -boot-info-table --efi-boot iso_root/boot/limine-eltorito-efi.bin -efi-boot-part --efi-boot-image --protective-msdos-label iso_root -o image.iso

But now get the error message:

test$ xorriso -as mkisofs -b iso_root/boot/limine-cd.bin -no-emul-boot -boot-load-size 4 -boot-info-table --efi-boot iso_root/boot/limine-eltorito-efi.bin -efi-boot-part --efi-boot-image --protective-msdos-label iso_root -o image.iso

xorriso 1.5.2 : RockRidge filesystem manipulator, libburnia project.

Drive current: -outdev 'stdio:image.iso'
Media current: stdio file, overwriteable
Media status : is blank
Media summary: 0 sessions, 0 data blocks, 0 data, 1469g free
Added to ISO image: directory '/'='/home/lonnie/Limine/test/iso_root'
xorriso : UPDATE :       7 files added in 1 seconds
xorriso : FAILURE : Cannot find in ISO image: -boot_image ... bin_path='/iso_root/boot/limine-cd.bin'
xorriso : UPDATE :       7 files added in 1 seconds
xorriso : aborting : -abort_on 'FAILURE' encountered 'FAILURE'

Any ideas as to what I missed which is probably something simple that I just do not see yet.

Thanks

mintsuki commented 2 years ago

The path to limine-cd.bin and limine-eltorito-efi.bin needs to be relative to the root of the ISO, not your host filesystem. You can find extra info here: https://wiki.osdev.org/Stivale.