I'm building a root filesystem using buildroot (running on Ubuntu 22.04.4 LTS) for an ARM Cortex-A7 target. I'm including Node.js by selecting "[*] nodejs" in Target packages ---> Interpreter languages and scripting --->.
After successfully flashing and booting the target, I run node
in /usr/bin/
and get:
/usr/bin # ./node
./node: /lib/libm.so.6: version `GLIBC_2.38' not found (required by ./node)
./node: /lib/libm.so.6: version `GLIBC_2.29' not found (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libstdc++.so.6: no version information available (required by ./node)
./node: /lib/libc.so.6: version `GLIBC_2.33' not found (required by ./node)
./node: /lib/libc.so.6: version `GLIBC_2.34' not found (required by ./node)
./node: /lib/libc.so.6: version `GLIBC_2.32' not found (required by ./node)
./node: /lib/libc.so.6: version `GLIBC_2.38' not found (required by ./node)
./node: /lib/libc.so.6: version `GLIBC_2.32' not found (required by /usr/lib/libuv.so.1)
./node: /lib/libc.so.6: version `GLIBC_2.38' not found (required by /usr/lib/libuv.so.1)
./node: /lib/libc.so.6: version `GLIBC_2.33' not found (required by /usr/lib/libuv.so.1)
./node: /lib/libc.so.6: version `GLIBC_2.34' not found (required by /usr/lib/libuv.so.1)
./node: /lib/libc.so.6: version `GLIBC_2.34' not found (required by /usr/lib/libcares.so.2)
./node: /lib/libc.so.6: version `GLIBC_2.33' not found (required by /usr/lib/libcares.so.2)
./node: /lib/libc.so.6: version `GLIBC_2.36' not found (required by /usr/lib/libcares.so.2)
./node: /lib/libc.so.6: version `GLIBC_2.38' not found (required by /usr/lib/libcares.so.2)
./node: /lib/libc.so.6: version `GLIBC_2.38' not found (required by /usr/lib/libcrypto.so.3)
./node: /lib/libc.so.6: version `GLIBC_2.33' not found (required by /usr/lib/libcrypto.so.3)
./node: /lib/libc.so.6: version `GLIBC_2.34' not found (required by /usr/lib/libcrypto.so.3)
./node: /lib/libc.so.6: version `GLIBC_2.33' not found (required by /usr/lib/libssl.so.3)
./node: /lib/libc.so.6: version `GLIBC_2.34' not found (required by /usr/lib/libssl.so.3)
I don't see how to change the buildroot config to include the required versions of GLIBC.
The only glibc-related config options I see (in make nconfig
) is "Enable compatibility shims to run on older kernels" in Toolchain --->, which I checked.
You started the build of some configuration, then changed the toolchain settings, and then built again with the new settings without running make clean
. You need an explicit make clean
when toolchain settings are changed.