toolchain came from yocto.
Getting toolchain step:
$ mkdir yocto-real-time-edge
$ cd yocto-real-time-edge
$ repo init -u
https://github.com/nxp-real-time-edge-sw/yocto-real-time-edge.git \
-b real-time-edge-scarthgap \
-m real-time-edge-3.1.0.xml
$ DISTRO=nxp-real-time-edge-baremetal MACHINE=imx93evk source real-time-edge-setup-env.sh -b build_dir
$ bitbake meta-toolchain
The build process will then retrieve the following toolchain installation script:
nxp-real-time-edge-baremetal-glibc-x86_64-meta-toolchain-armv8a-imx93evk-toolchain-3.1.sh
$ ./nxp-real-time-edge-baremetal-glibc-x86_64-meta-toolchain-armv8a-imx93evk-toolchain-3.1.sh -d ./toolchain
building uboot step:
$ git clone
https://github.com/nxp-real-time-edge-sw/real-time-edge-uboot.git$ cd real-time-edge-uboot
$ git checkout Real-Time-Edge-v3.1-baremetal-202503
$ source ../toolchian/environment-setup-armv8a-poky-linux
$ make imx93_11x11_evk_baremetal_master_defconfig
$ make -j8
The error:
aarch64-poky-linux-ld.bfd: cannot find -lm: No such file or directory
The error indicates a missing libm.a file. However, U-Boot already provides this library at the following path:
real-time-edge-uboot/math/lib/libm.a.
When building U-Boot, the linker reports can find libm.a.
But when building U-Boot SPL, the linker reports cannot find libm.a.
Ibitbake
nxp-real-time-edge-baremetal-glibc-x86_64-meta-toolchain-armv8a-imx93evk-toolchain-3.1.sh