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來源: 粵嵌教育瀏覽量:1222