Search code examples
buildrootbusybox

Buildroot packages not in busybox can't be run


If I compile custom executables (binaries), or use executables from buildroot, busybox shell keeps saying applet not found For instance, I can select coremark from the included packages list, but then if I try running coremark, I get:

~ # coremark
coremark: applet not found

Is there some setting within busybox or buildroot that tells busybox to be willing to load non-busybox executable files? I'm currently running with RISC-V 32-bit rv32 Linux 5.18 and tip of master buildroot.


Solution

  • I found the issue! On my particular system, only flat binaries are usable. So, you either need to add -Wl,-elf2flt=-r to the link invocation or use elf2flt in order to make executable files.