关于skyeye模拟和arm-elf-gcc的使用

2128阅读 0评论2012-04-19 XylDll
分类:WINDOWS

◆关于C语言

编译命令:arm-elf-gcc -O2 -c 源C文件名

注意这里的-O参数要大写,表示优化参数

比如:arm-elf-gcc -O2 -c hello.c执行后会有一个hello.o的文件生成

链接命令:arm-elf-ld -e 入口函数 -Ttext 内存地址 .o文件 -o 链接后生成的文件

-e表示指定程序的运行入口,-Ttext表示指定该程序的运行基地址(内存地址)

比如:arm-elf-ld -e hello -Ttext 0x0 hello.o -o hello 执行后会生成一个hello文件,入口函数是hello,连接到内存0x0处,此时hello函数就具有了运行条件。

加载到硬件命令:arm-elf-objcopy -o binary 连接后的文件 可执行机器码镜像

比如:arm-elf-objcopy -o binary hello hello.bin 执行后会生成hello.bin文件(-O必须大写)

将hello.bin文件和skyeye.conf文件放在一起,然后执行skyeye就会产生结果。

skyeye.conf文件如下(图中镜像文件为2_1.bin):

此外我们可以写自己的脚本链接文件(.lds),在链接时执行命令: arm-elf-ld -T 脚本链接文件 .o文件 -o 链接生成的文件

脚本链接文件如下:

entry显示指定入口函数

注意:在设置位置计数器时必须有空格,比如.=0x0000000;就会出错

上一篇:Cygwin使用方法
下一篇:《一步步写嵌入式操作系统》之基础知识篇