Chinaunix首页 | 论坛 | 博客
  • 博客访问: 351710
  • 博文数量: 43
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 585
  • 用 户 组: 普通用户
  • 注册时间: 2013-03-29 20:57
文章分类

全部博文(43)

文章存档

2013年(43)

我的朋友

分类: LINUX

2013-10-31 20:54:11

一、编译器与arm处理器架构不匹配

eg:

TQ2440使用了S3C2440处理器,在板上cat /proc/cpuinfo

[root@EmbedSky /]# cat /proc/cpuinfo
Processor       : ARM920T rev 0 (v4l)
BogoMIPS        : 199.47
Features        : swp half
CPU implementer : 0x41
CPU architecture: 4T
CPU variant     : 0x1
CPU part        : 0x920
CPU revision    : 0

Hardware        : TQ2440
Revision        : 0000
Serial          : 0000000000000000

可以看出cpu结构为armv4,而所用SourceryCodeBench默认是用armv5的option的(安装完的readme有写),所以illegal instruction根本原因是版本不匹配。

改为:

windows命令行:arm-none-linux-gnueabi-gcc.exe -march=armv4t -o hello hello.c
tq2440:
[root@EmbedSky /]# tftp -g -r hello 192.168.0.108
[root@EmbedSky /]# chmod +x hello
[root@EmbedSky /]# ./hello
Hello Arm World!






阅读(3387) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~