扫一扫,分享给好友
感谢电子发烧友论坛和芒果派。上次介绍了操作系统的安装,芒果派MQ Pro自带有GCC,所以可以在开发板上完成程序的编译和链接。不过毕竟开发板的速度很慢,如果要开发大型程序,还是希望在电脑上完成交叉编译,今天就尝试一下交叉编译环境的配置。
芒果派MQ Pro采用的全志D1处理器,其中使用的是平头哥的玄铁C906核。所以首先想到的交叉编译器就是去平头哥的网站下载。平头哥网站提供了各个宿主平台的优化编译器(https://xuantie.t-head.cn/community/download?id=4090445921563774976),我选择了适合自己平台的x86_64编译器。
平头哥的网站还提供了优化的定制版OpenCV,据说这个版本可以最大限度地发挥D1芯片的性能,让人很是期待。
不过接下来的测试遇到了麻烦。使用平头哥编译器生成的可执行文件在开发板上无法运行。
root@nezha$: ./hello -bash: ./hello: No such file or directory
使用ldd命令检查了一下hello的所有链接库,发现一切正常,但是就是无法执行。现象和网友jszszzy在Lichee RV 86 PANEL开发板测试的结果类似:http://bbs.eeworld.com.cn/thread-1197058-1-1.html。推测平头哥编译器所使用的glibc库和芒果派在带镜像所使用的glibc不兼容。
后在PC端安装了Ubuntu自带的RISC-V编译器,发现这个编译器编译的程序可以在板子上运行。但是Ubuntu自带的RISC-V编译器和平头哥提供的优化的OpenCV又不兼容,无法编译。看来芒果派提供的官方镜像和平头哥的优化编译器,鱼和熊掌不可兼得。
发布
交叉工具配置risc-v沁恒mcu
【AG32开发板体验连载】智能蒸烤箱--AG32VF407I2C总线测试
什么是RISC-V?以及RISC-V和ARM、X86的区别
RISC-V的指令集位宽的几点学习心得
学习RV32GC对比X86-32指令集的优势思考
AG32开发板使用的几点心得体会
ESP8266笔记-05.ESP8266 WIFI的使用
RISC-V基本整数指令
【AG32开发板体验连载】基于NTC的温度测控装置演示视频
【AG32开发板体验连载】开箱记录:全新范式的开发模式-由软件定义的硬件资源管理
RISC-V之li指令讲解
电子发烧友网
电子发烧友论坛