step1:搭建好nfsstep2:在主机上编写程序,如下
//============================================
//FileName:alarm_test.c
#include <signal.h>
#include <unistd.h>
int i=0;
static void sig_alarm(int signumber)
{if(i==3)
i==0;
printf("sigal alarm\n");
alarm(2);}
int main(void)
{
if(signal(SIGALRM,sig_alarm)==SIG_ERR)
{ printf("some error occurs.\n"); return 1;}
alarm(2);while(1);
return 0;
}
//===========================================
step3:在主机上调试通过:gcc -o alarm_test_x86 alarm_test.c执行:./alarm_test_x86
step4:用arm-elf-gcc编译:arm-elf-gcc -Wall -O2 -elf2flt -o alarm_test_arm alarm_test.c 在键入的编译命令中,选项:-Wall 指定产生全部的警告信息-O2 是一个二级优化选项,它告诉编译器产生尽可能小和尽可能快的代码。-elf2flt 指定自动调用elf转换flat格式的工具;之所以要使用该选项是因为,由于GNU工具本身并不支持flat格式的二进制文件,然而,uClinux目前只支持flat格式的可执行文件,因此必须使用相应的二进制工具进行格式转换。
flat格式是对elf格式的很大的文件头和一些段信息做了简化的文件格式。编译成功后得到的alarm_test_arm就可以在uClinux环境上运行了./alarm_test_arm如果出现./alarm_test_arm :Permission denied,则需要在主机上 chmod 777 alarm_test_arm
在ARMSYS-C板上运行自己编写的程序的步骤
更新时间: 2007-02-02 21:59:58来源: 粤嵌教育浏览量:1225