0

I'm trying to make a Live ISO for USB. I'm following a guide to help me do this, and one of the steps says to: cp /usr/lib/syslinux/modules/bios/ldlinux.c32 image/isolinux/, but I don't have /usr/lib/syslinux/modules/bios/ldlinux.c32 on my system. I've tried find -iname ldlinux.c32 but nothing is returned. I've installed isolinux and syslinux, but that hasn't helped.

I searched Google for ldlinux.c32 intitle:"index of" -inurl:(jsp|pl|php|html|aspx|htm|cf|shtml) -inurl:(listen77|mp3raid|mp3toss|mp3drug|index_of|wallywashis), and found ldlinux.c32 in a few open directories. Will any one I pick, work? I'm concerned that this is not even close to best practice, but I can't figure out how else to get ldlinux.c32. The syslinux website assumes you have it, from what I read.

1

See https://www.syslinux.org/wiki/index.php?title=Library_modules

All Syslinux variants need an additional ldlinux module

Since version 5.00, when a SYSLINUX or EXTLINUX installer is used, the relevant boot sector will be modified and two files will be added to the "installation directory": the ldlinux.sys boot loader file, and an auxiliary ldlinux.c32 file. Note that these two files are not necessary so as to execute the installers; they are already embedded in the installers themselves.

For other Syslinux variants (PXELINUX, ISOLINUX) booting BIOS firmware, the second file, ldlinux.c32, needs to be manually added, just as the boot loader. Both files shall match the same version. For example, before building a new ISOLINUX image, two files are now needed: the isolinux.bin boot loader file, and the same auxiliary ldlinux.c32 file.

ISOLINUX/PXELINUX

Download syslinux from kernel.org

The files should be present in the downloaded package.

$ find syslinux-6.00 -name "ldlinux.*[0-9]*"
syslinux-6.00/bios/com32/elflink/ldlinux/ldlinux.c32
syslinux-6.00/efi32/com32/elflink/ldlinux/ldlinux.e32
syslinux-6.00/efi64/com32/elflink/ldlinux/ldlinux.e64    
$ find syslinux-6.00 -name "isolinux.bin"
syslinux-6.00/bios/core/isolinux.bin

SYSLINUX/EXTLINUX

You only need your syslinux or extlinux file. The file ldlinux.c32 is contained in these files and is automatically installed when you run "syslinux -f -i" or "extlinux -i" (or an installer script) to make your drive bootable.

See the Syslinux manual: Creating a Bootable Disk - Linux

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.