牛棚

--拥有的远比想象的多...
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

第三篇:第一个能在开发板上运行的程序

Posted on 2009-06-23 12:01  Moi  阅读(504)  评论(0)    收藏  举报
第三篇:第一个能在开发板上运行的程序
日期:2009-3-6
程序非常的简单,如下所示:

#include <stdio.h>
int main(void){
printf("hello,linux!");
return 0;
}
[root@localhost sin]# arm-linux-gcc -o hello –c hello.c
编译提示错误
[root@localhost sin]# arm-linux-gcc -o hello hello.c
/usr/local/arm/2.95.3/arm-linux/bin/ld: cannot find /usr/local/arm/2.95.3/arm-linux/lib/libc.so.6
collect2: ld returned 1 exit status

从程序看实在找不出来啥错误,到。。/lib下看,的确没有libc.so.6这个文件
于是从新解压 cross-2.95.3.tar.bz2,我把它放入/usr/local/arm这个目录
Tar – xjvf cross-2.95.3.tar.bz2
建立环境变量 export    PATH=/usr/local/arm/2.95.3/bin:$PATH

[root@localhost sin]# arm-linux-gcc -o hello –c hello.c
这次OK了
如何把编译好的文件传送到开发板,并且执行呢?


传输文件到开发板上:
开发在超级终端先进入 shell模式, 进入 tmp目录下
注意:这里的超级终端是 TCP/IP方式建立的终端哦
    新建一个终端,选择 TCP/IP(winsock),IP设置为开发板的IP地址
在PC机的超级终端开始连接,会出现一个登陆提示
可以以root登陆
如下:

Linux 2.4.18-rmk7-pxa1 ((none)) (0)
(none) login: root
BusyBox v0.60.3 (2002.05.13-08:36+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

# ls
bin       etc       linuette  mnt       qt        tmp       var
dev       lib       linuxrc   proc      sbin      usr
# cd tmp
# ls
erase
#  
在开发板上,先进入 tmp目录。
开启 telnet服务,并设置 开发板的IP(我不理解的是,在vivi下,net show 查看过了,IP是 192。168。1。2
为什么还要先像下面那样设置下,才能和PC连起来呢???
# inetd
# ifconfig eth0 192.168.1.2
#
(上面這個兩步驟是在 串口連接方式下的中斷中操作的)
目前,我还是没弄明白 嘿嘿,反正知道不这么做就是连接不起来 !。。

当连接起来后,可以点“发送”,协议选zmode;进度条结束后,就说明传输OK了
查看(当前应该是在tmp目录下)
# # ls
erase  hello
# ./hello
郁闷,提示: ./hh: Permission denied
别着急,修改下权限吧先。
# chmod 777 hello
# ./hello
hello,linux!#
OK,到这里,我们的第一个程序就算成功了。!
闲来无事,