今天在正点原子的rk3568上跑RKNN多线程案例的时候发生了报错,报错信息如下:
./rknn_yolov5_demo: /lib/aarch64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by lib/librga.so)
关于这个问题网上的解决方案还是很多的,大多都是思路一样的,但是在一些细节上出现了问题,所以我将我成功解决的步骤记录了下来
二 解决方法💉💉💉:
1 cd到指定路径
cd /usr/local
2 下载glibc-2.29.tar.gz并解压
wget http://ftp.gnu.org/gnu/glibc/glibc-2.29.tar.gz
tar -zxvf glibc-2.29.tar.gz
cd glibc-2.29
3 切换为root模式
sudo su
4 配置
mkdir build
cd build/
../configure --prefix=/usr/local --disable-sanity-checks
5 安装 (时间很长)
make -j8
make install
出现 Warning: ignoring configuration file that cannot be opened: /usr/local/etc/ld.so.conf: No such file or directory 不用担心,继续向后操作即可
完成后再/usr/loacl/lib下面生成了libm-2.29.so
6 将libm-2.29.so复制到前面报错缺少的地方
cp /usr/local/lib/libm-2.29.so /lib/aarch64-linux-gnu/
7 建立强制软连接
ln -sf libm-2.29.so libm.so.6
8 查看结果
strings /lib/aarch64-linux-gnu/libm.so.6 | grep GLIBC_
9 再次执行模型部署的代码,成功运行