在使用riscv64-unknown-linux-gnu编译器编译sysbench后,在开发板上出现versidon'GLIBC_2.29'not found的wenti
-
使用交叉编译器riscv64-unknown-linux-gnu编译sysbench,file最后执行文件如下:sysbench: ELF 64-bit LSB executable, UCB RISC-V, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-riscv64xthead-lp64d.so.1, for GNU/Linux 4.15.0, with debug_info, not stripped。使用adb push到开发板上运行./sysbench时出现:./sysbench:/lib64xthead/lp64d/libpthread.so.0:version 'GLICB_2.29' not found(required by ./sysbench)问题
-
@qq715819829
因为您的编译器和SDK里面的不是同一个,导致没有C库。如果坚持用SDK外的编译器编译,那么需要开启-static选项。 -
@whycan 谢谢回复,我输入的命令是./configure --host=riscv64-unknow-linux-gnu,之后输入make,具体在哪里开启static选项呢
-
configure 选项里面可能有。
-
@whycan 我刚才看到configure里默认开启静态库选项
-
已解决:gcc编译器使用官方源码下的tina-d1-h/prebuilt/gcc/linux-x86/riscv/toolchain-thead-glibc/riscv64-glibc-gcc-thead_20200702/bin/riscv64-unknown-linux-gnu-gcc。
所以官方提供的 http://netstorage.allwinnertech.com:5000/sharing/b8mBL1xWa 并无作用,容易误导。
且repo sync时出现网速太慢和虚拟机内存空间小导致官方源码下载不了。建议修改技术文档中提供的gcc编译器。 -
@qq715819829
感谢分享宝贵经验。 -
@qq715819829 这个文档里的gcc已经过时了,使用sdk提供的即可
Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号