在ubuntu系统连接jz2440开发板 出现Illegal instruction

在ubuntu系统连接jz2440开发板 出现Illegal instruction,第1张

我帮你查了下,看看有没有用。虽然是转载的~希望能帮上忙
Illegal instruction的解决方法

最新解决方法:
把/usr/local/arm/compiler/arm-none-linux-gnueabi/libc/armv4t/lib目录(也就是你的编译器的库目录)下
的所有文件拷贝到目标板子的根目录的lib目录下就好了。
这样无论你的hello是动态编译还是静态编译,跑起来都不会有Illegal instruction的问题。
////////////////////////////////
老的解决方法:
开发板配置: ARM9 + linux-3630
编译器:arm-linux-432
在移植好jffs2文件系统以后,当然想写个hello world 来验证一下自己的成果了。好,开始:
1编辑编译
#vi helloc
#include <stdioh>
int main(void)
{
printf("welcome to my rootfs!/n");
return 0;
}
#arm-linux-gcc –o hello helloc
2把hello复制到用来制作文件系统的文件夹,制作文件系统rootfsjffs2,下载运行,开发板能够成功启动,能够出现shell交互界面。这点肯定地说明busybox是没有问题的。运行hello
/hello出现:
Illegal instruction
从网上找了很多资料,大部分把责任归于EABI,但我想想,既然kernel和busybox都能正常启动,那它们都应该是eabi编译的了,hello也肯定是eabi的,因为他们都是用arm-linux-432编译的(编译内核的时候make menuconfig要选山EABI选项)所以网上大部分资料都不适合解决我遇到的问题。但最终还是找到了一边能够帮我解决问题的文章:
>

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12763714.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-27
下一篇 2023-05-27

发表评论

登录后才能评论

评论列表(0条)

保存