[Toybox] 0.8.3 is out.

Rob Landley rob at landley.net
Wed May 13 16:13:37 PDT 2020


On 5/13/20 5:26 PM, Patrick Oppenlander wrote:
> That works for:
> 
> % make root LINUX=../linux
> 
> I alread have a bunch of cross compilers installed & in my path:
> 
> % ls -1 /opt/cross
> aarch64-linux-musleabi
> armv7m-linux-musleabi
> armv7m-linux-musleabihf
> arm-cdd-linux-musleabi
> arm-linux-musleabi
> arm-none-eabi
> arm_cortex_m0-eabi-newlib
> m32c-elf
> m68k-elf
> powerpc-eabispe
> x86_64-linux-musl
> 
> So I tried
> 
> % make root CROSS_COMPILE=arm-linux-musleabi- LINUX=../linux
> 
> Which fails with "Unknown $TARGET"

It's taking everything before the first dash and feeding it into a big if/else
staircase. In theory arrcchh6644 should work, and m68k and x86_64. but "arm" it
doesn't known armv5l vs armv7l (different kernel configs)...

> OK, maybe
> 
> % make root TARGET=arm CROSS_COMPILE=arm-linux-musleabi- LINUX=../linux
> 
> That fails with "cp: bad 'toybox': No such file or directory"

I suspect there was at least one error message before that, which you didn't copy?

> Maybe I should read the script.. OK, looks like TARGET should be
> armv7l in this case
> 
> % make root TARGET=armv7l CROSS_COMPILE=arm-linux-musleabi- LINUX=../linux
> 
> Nope, same problem.
>
> OK I think what's happening is that the TARGET variable is leaking
> into make.sh which then generates toybox-$TARGET which mkroot.sh
> doesn't expect?

I've never set it on the mkroot command line before, so it's always been a local
and never exported from mkroot into child processes. I can add an explicit
"unexport", or I could rip the suffix plumbing out of make.sh.

> Patrick

Rob



More information about the Toybox mailing list