Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Failed to load ldlinux.c32 #284

Closed
Salman17546 opened this issue Feb 13, 2025 · 1 comment
Closed

Failed to load ldlinux.c32 #284

Salman17546 opened this issue Feb 13, 2025 · 1 comment

Comments

@Salman17546
Copy link

Salman17546 commented Feb 13, 2025

I followed the below steps to make the ISO

  1. Extract Linux Live Kit

    • Unpack the Linux Live Kit tarball into a directory (for example, /a/linux-live-2.12).
  2. Configure the Build

    • Edit the configuration file:
      sudo nano /a/linux-live-2.12/config
    • Set the LIVEKITNAME (for example, change from "linux" to "software").
    • Ensure the kernel path is correct (for example, update VMLINUZ to /boot/vmlinuz-6.8.0-52-generic if needed).
  3. Update the Bootloader Files for CD/DVD Booting

    • Change to the tools directory:
      cd /a/linux-live-2.12/tools
    • Run the isolinux update script:
      sudo ./isolinux.bin.update
    • When prompted for the boot directory, enter:
      /software/boot
      
  4. Build the Live System

    • Return to the Linux Live Kit root directory:
      cd /a/linux-live-2.12
    • Run the build script to create the live system files:
      sudo ./build
    • The build process creates an intermediate directory (for example, /tmp/software-data-<timestamp>).
  5. Generate the ISO

    • Run the ISO generation script:
      sudo /tmp/gen_software_iso.sh

but before this I added the allow-limited-size flag so that my ISO which is more than 4GB size can be made

  • This creates the ISO (for example, /tmp/software-x86_64.iso).

Troubleshooting the "Failed to Load ldlinux.c32" Error

Even after following the above steps, I saw the error “failed to load ldlinux.c32” when booting the ISO, here’s what was done to resolve it:

  1. Replace ldlinux.c32 with the Official Ubuntu Version

    • Copy the Ubuntu-provided ldlinux.c32 into the ISO build directory:
      sudo cp /usr/lib/syslinux/modules/bios/ldlinux.c32 /tmp/software-data-<timestamp>/software/boot/ldlinux.c32
    • (Replace <timestamp> with your actual directory name.)
  2. Ensure the Boot Configuration Uses Relative Paths

    • Copy syslinux.cfg to isolinux.cfg (if not already done):
      sudo cp /tmp/software-data-<timestamp>/software/boot/syslinux.cfg /tmp/software-data-<timestamp>/software/boot/isolinux.cfg
    • Edit the configuration file:
      sudo nano /tmp/software-data-<timestamp>/software/boot/isolinux.cfg
    • Modify the UI directive to use a relative path:
      • Change any line like:
        UI /software/boot/vesamenu.c32
        
        to:
        UI vesamenu.c32
        
    • Save and exit.
  3. Rebuild the ISO

    • Regenerate the ISO with the updated build tree:
      sudo /tmp/gen_software_iso.sh

My kernel name was different as well so I changed that in config before running the sudo ./isolinux.bin.update and then I ran the build command. The syslinux.cfg had the kernel name as vmlinuz and not vmlinuz-generic-* like my kernel so I changed that as well as a fix but still the same error showed up.
Even after doing all of this my error is not resolved kindly help me out what I am doing wrong here
My Ubuntu version is:

Distributor ID: Ubuntu
Description: Ubuntu 24.04.1 LTS
Release: 24.04
Codename: noble

@Salman17546
Copy link
Author

Solved this issue I just made sure that my LIVEKITNAME remains the same as default "linux" to avoid running that update script and it worked. But now I have ran into another issue which is Cannot Load Linux Data.....

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant