Web lists-archives.com

cross compiling for arm




I am having problems with cross compiling a small program for the BeagleBone (single board Arm Cortex A processor) on an amd64 PC.  I can compile the program on the BeagleBone, but would like to use QTcreator on the Debian Buster desktop PC.

With the BeagleBone on Stretch and the development PC on Buster , I use the crossbuild-essential-armhf v12.5 to produce the Arm binary.  Unfortunately it uses GLIBC_2.28.  Buster itself uses 2.27 and Stretch 2.24. S I cannot run my produced binary.  I notice Sid uses GLIBC_2.28 but I do not want to put this on a BeagleBone.  I tried buster on the BeagleBone but it also uses 2.27.

I tried to force crossbuild to the Stretch version of 12.3 but I probably did not do that correctly.

I could use a Stretch chroot on the development PC but then could not use my normal QTcreator or put Stretch on the PC but other programs require Buster.

When the program is run, the error is "/lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.28' not found"

I would prefer to keep the BeagleBone on Stretch.

Is there a way round this library dependency?

Thanks in anticipation.

Billy