/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found__Why understanding the kernel, Linux system construction, and driver-related knowledge is helpful for application development

In a certain project, I want to encapsulate a deep learning algorithm SDK interface for others, running on the RK3588 platform, and the cross-compilation tool chain given to me by the customer is

 Then I used them to give my cross-compilation tool chain the following error:

 aarch64-buildroot-linux-gnu-gcc --version
/data/chw/aarch64/bin/ccache: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by /data/chw/aarch64/bin/ccache)

Normally, I need to upgrade the glibc library at this time, but I don’t want to upgrade. Then I found that the cross-compilation tool chain they gave me came with buildroot. That means it was a cross-compilation tool chain generated by them using buildroot. Then this error may be due to his development The computer uses `GLIBC_2.28, but my computer does not have this `GLIBC_2.28, so I knew the error was reported, so I simply didn’t use their library. I went directly to the official website to download the cross-compilation tool chain myself;

Linaro Snapshots

After downloading, install

xz -d gcc-linaro-11.3.1-2022.06-x86_64_aarch64-linux-gnu.tar.xz 
tar xzvf gcc-linaro-11.3.1-2022.06-x86_64_aarch64-linux-gnu.tar
chmod 777 gcc-linaro-11.3.1-2022.06-x86_64_aarch64-linux-gnu.tar
tar xvf gcc-linaro-11.3.1-2022.06-x86_64_aarch64-linux-gnu.tar 
vim ~/.bashrc
增加路径
source  ~/.bashrc

 Then

It can also be seen from here that even if you are doing application development, it is helpful to understand some related knowledge of Linux system construction, buildroot, and Linux drivers. Otherwise, I may not know aarch64-buildroot-linux-gnu at all. -What is the meaning of buildroot in gcc, so I would not think of downloading the cross-compilation tool chain directly. 

Guess you like

Origin blog.csdn.net/u013171226/article/details/132068128