vesamenu.c32 boot problem

Several people reported they have problem booting Slax from USB device, with the following error message displayed:

failed to load com32 file /slax/boot/vesamenu.c32
I am not able to replicate this error, so I need your help to find out what particular change fixes it. So, if you are experiencing these troubles, please try the following and let me know what helps:

1) download latest syslinux
2) unzip
3) find file ./bios/com32/menu/vesamenu.c32
4) copy the vesamenu.c32 to your USB disk with Slax and try to boot Slax again.

If this helps to resolve your problem, please reply here that vesamenu.c32 is the only file which needs update. However, it is possible that some more files need to be added, so if only vesamenu.c32 won't help to fix your problem, try to copy also ./bios/com32/libutil/libutil.c32, ./bios/com32/libcom/libcom.c32, and maybe some others from the ./bios/com32 directory. I don't think that those are needed, but you can test.

I cannot solve this alone, since it doesn't fail on my computer. Thank you very much for your time playing with this.

User comments
Николин Николов 2017-11-19 13:59

Follow steps 1-4 , but "new" vesamenu.c32 is 26,5 kB from 06/10/2014 -> reboot -> same result .

Copy ./bios/com32/libutil/libutil.c32 in ./slax/boot/ and ./bios/com32/lib/libcom.c32 ( ./bios/com32/libcom - not exist ) in ./slax/boot

Reboot -> Result:

Undef symbol FAIL: SysAppends
Failed to load libcom32.c32
Failed to load COM32 file /slax/boot/vesamenu.c32

Laptop Lenovo G550 , try file system ntfs , ext4 and fat32 for slax 9 x64 and slax 9 x32 fat32

Николин Николов 2017-11-19 19:31

Problem solved !
Under Windows 7 Ultimate x32 unzip slax9.iso x64 -> copy all on USB device FAT32 -> run ./slax/boot/bootinst.bat

all work .

Now write in my old system slax 7 x32 because can't see wireless icon ( need driver for broadcom )

Gilles Arnaud 2017-11-20 10:53

if I just copy vesamenu.c32
failed to load libcom32.c32
failed to load COM32 file /slax/boot/vesamenu.c32

if i add libutil.c32 and libcom32.c32 got:
Undef symbol FAIL: __syslinux_debug_
failed to load libcom32.c32
failed to load COM32 file /slax/boot/vesamenu.c32

Gilles Arnaud 2017-11-20 10:57

I try to add menu.c32
same errors

Juan De Abajo 2017-11-20 14:00

I had the same error with a usb stick after executed the bootinst.sh from my normal debian (stretch) system. I plugged the usb on a virtual machine and executed the bootinst.sh again from a slax session. The problem is solved.

Just execute the script from a slax session.

Lukáš Zapletal 2017-11-20 20:51

I suggest you to use isohybrid tool for the ISO you distribute, this will allow your users to simply "dd" the ISO to flash or drive and work is done.


This will make the process not dependent on user's syslinux package, because with isohybrid there is syslinux embedded in the ISO already. Resulting ISO might get little bit bigger, but it is possible to skip UEFI or Mac loaders for smaller size. We use this successfully for years for upstream users and downstream customers.

Robert Wolter 2017-11-20 23:05

I support the suggestion of Lukáš Zapletal, it would make things much easier.

lucbertz 2017-11-21 15:20

isohybrid system doesn't work if I want to keep destination drive filesystem and files.
Furthermore, proceeding in this way, is the dd destination writable?

Robert Wolter 2017-11-21 19:17

Now it gets weird. Using Linux Mint 18.2 as installation distro, the USB stick works out-of-the-box. I didn't have to change anything. It obviously strongly depends on the distro used for installation whether it works or not.

Tomas M 2017-11-21 19:27

Using isohybrid simplifies putting the ISO on a USB disk, but as far as I understand such USB disk is no more writable, since using dd puts ISO filesystem on it. The main advantage of Slax on USB disk is the possibility to enable Persistent changes.

Robert Wolter 2017-11-21 19:40

I like the possibility of enabling persistance, but the success of failure of the installation process for the USB stick should not depend on the distro used.

Tomas M 2017-11-21 20:00

Yeah that is strange

Tomas M 2017-11-21 20:05

I just reviewed the bootinst.sh script since I no longer remembered how it works. Well, it tries to use your system's extlinux if you have one. If not, then it uses extlinux binary provided by Slax.

So now the question is, what fails - if your local extlinux in your distro (because if it is found then it is used) or the extlinux.exe binary in Slax which is used only if nothing is found in your distro.

I would guess the problem is in Slax's binary because it was not updated for long time, so I'll update it anyway.

Robert Wolter 2017-11-21 20:22

That's a good idea.

Gilles Arnaud 2017-11-22 12:30

try the Juan De Abajo's recipe.
make the copy of slax directory on my fedora
reboot on a slax CD
run the bootinst.sh
reboot on the stick
and then it works.

Russell Hernandez 2017-11-22 17:08

I had to put Slax in FAT instead of ext4 as well. I will try now to bootinst.sh with ext4 from Slax now.

Russell Hernandez 2017-11-22 17:10

I would love to see an official small forum or IRC channel for discussion as well for people to help each other more easily.

palmer 2017-11-24 13:49

I just cp'd the libutil.c32 & libcom.c32 from /usr/lib/syslinux bios set and changed syslinux.cfg ui line to UI vesamenu.c32 without the absolute path.. seems to be fine on an sd card raw'd to virtualbox.

Schronk Tamás 2017-11-26 10:03

I found this post https://askubuntu.com/a/856822/451282
so I copied :

from /usr/lib/syslinux/bios to /slax/boot/ and now its working on my Dell E6320

I agree with Russell Hernandez about the forum

Tachobrenner 2017-11-26 10:40

@Russel Hernandez Me too. But Nevermind, I'll ask here. I've got an old Computer with 2 Gigs of RAM, a Celeron D and a 80 Gig hardrdrive mounted through ATA/IDE to the Motherboard, an Asus P5S800-VM. I'm keen to install Linux and GCC to start learning C++ programming, I've got the right book for that. But as I understand you can't turn on the Copy2RAM feature and have Persistant Changes working and writing on your harddrive, am I wrong? It's still a great OS, I'm just rude and demanding really high things.

Tomas M 2017-11-26 11:10

You should be able to use both, press Tab key on boot logo screen and add "toram perch" to the command line. It should copy to ram, and also keep changes persistent.

Arda Aydın 2017-11-26 19:18

OR you can use rufus (www.rufus.org)(you have to be using Windows or wine)
it configures the os and uses newer SYSLINUX - which didn't give me any errors so far. Actually I use Rufus to make my PC to see my thumb drive bootable. Using EasyBCD's "PLoP" made my PC crash so I went with rufus.

Vojta 2017-12-03 16:24

I have observed the same vesamenu.c32 issue on ythe ext4 usb drive and the post of Schronk Tamás worked well for my ThinkPad box. Thank you!