您尚未登录。

楼主 #1 2019-04-23 19:05:38

qifengsvn
会员
注册时间: 2019-04-10
已发帖子: 14
积分: 14

求大佬,请教交叉编译问题,动态报Segmentation fault,静态报Illegal instruction(linux4.19rc)

环境:
主机:ubantu14.04+arm-linu-guneabi-
板子:nano F1C100S 16M flash(根文件系统使用的是从官方镜像拆出来的,内核是自己编译的4.19rc版本)

问题描述:尝试在主机交叉编译后,将生成的应用文件在板子上运行,动态编译方式:段错误;静态编译方式:Illegal instruction;感觉很不正常
可能的造成问题的原因:
1、根文件系统非自己编译,而是官方镜像抽出来的,与内核版本不匹配?
2、arm-linu-guneabi-的lib文件需要传递给nano?
3、file 文件类型后如下所示(静态编译):
ELF 32-bit LSB  executable, ARM, EABI5 version 1 (GNU/Linux), statically linked, for GNU/Linux 3.2.0, BuildID[sha1]=d4d21699df3a1927ac238fefca1f2cf1d25a3787, stripped

恳请各位大佬指导!!

离线

#2 2019-04-23 19:23:10

晕哥
管理员
所在地: 微信 whycan_cn
注册时间: 2017-09-06
已发帖子: 9,223
积分: 9197

Re: 求大佬,请教交叉编译问题,动态报Segmentation fault,静态报Illegal instruction(linux4.19rc)

应该是用了错误的工具链,或者使用了默认的配置,导致生成arm9无法识别的指令集

按这个套路走一遍: https://whycan.cn/t_2179.html





在线

#3 2019-09-17 17:40:22

晕哥
管理员
所在地: 微信 whycan_cn
注册时间: 2017-09-06
已发帖子: 9,223
积分: 9197

Re: 求大佬,请教交叉编译问题,动态报Segmentation fault,静态报Illegal instruction(linux4.19rc)

https://whycan.cn/t_2860.html#p23405

应该是用了错误的工具链,或者使用了默认的配置,导致生成arm9无法识别的指令集

试一试这个: arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2





在线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn