全部博文(75)
分类: LINUX
2009-05-31 10:11:51
建立嵌入式ARM-linux开发环境,我将自己在Mini2440上的操作过程总结一下。希望对需要用的着的朋友有用。
1.编译环境
主机:CentOS 5.1
交叉编译器:arm-linux-gcc-4.3.2
开发板平台:S3C2440(Friendly Mini2440开发板)
2.安装交叉编译器
交叉编译器统一为arm-linux-gcc-4.3.2,下面是它的安装设置步骤。
Step1:下载复制到某个目录下如tmp\,然后
进入到该目录,执行解压命令:
#cd \tmp
#tar xvzf arm-linux-gcc-4.3.2.tgz –C /
注意:C后面有个空格,并且 C是大写的,它是英文单词“Change”的第一个字母,
在此是改变目录的意思。
执行该命令,将把 arm-linux-gcc安装到/usr/loca/arm/4.3.2目录。
Step2:把编译器路径加入系统环境变量,运行命令
#gedit /root/.bashrc
编辑/root/.bashrc文件,在最后一行 export PATH=$PATH:/usr/local/arm/4.3.2/bin
保存退出
重新登录系统(不必重启机器,开始->logout 即可),使以上设置生效,在命令行输入
arm-linux-gcc –v,会出现如下信息,这说明交叉编译环境已经成功安装。
3.配置minicom
minicom类似于windows中的超级终端,这里利用minicom作为开发目标的终端,在使用之前需要配置正确配置。配置的过程如下:
在Linux终端中输入:
minicom -s
对minicom进行设置。选择serial port setup,然后按A选择Serial Device为/dev/ttyS0,表示串口1,如果有多个串口可以根据自己具体的情况进行选择,一般PC机都只有一个串口,就是COM1,即ttyS0,(由于我笔记本本身没有串口,用的USB转串口,所以我的配置为/dev/ttyUSB0)。然后按E选择波特率为115200,8N1。然后按F选择Hardware Flow Control模式为No.
回车退出之后选择Save setup as df1,保存刚才的设置。OK!
4.配置tftp
[root@localhost yangdk]# rpm -ivh tftp-server-0.17-9.i386.rpm
warning: tftp-server-0.17-9.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing... ########################################### [100%]
1:tftp-server ########################################### [100%]
[root@localhost yangdk]#vi /etc/xinetd.d/tftp
然后编辑将disable改为no,其他不变如下:
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot
disable = no
}
接下来建立默认的tftp根目录,要跟上面的server_args的路径一样,这里是/tftpboot:
[root@localhost yangdk]# cd /
[root@localhost /]# mkdir tftpboot
[root@localhost /]# /etc/rc.d/init.d/xinetd restart
停止 xinetd: [ 确定 ]
启动 xinetd: [ 确定 ]
[root@localhost /]#
好了,然后在命令行输入setup,
[root@localhost root]# setup
选择
[root@localhost /]# /etc/rc.d/init.d/xinetd restart
这样就ok了,可以试着自己tftp自己测试tftp服务器是否启动了
5.配置NFS
NFS在centos5下面是默认安装的,如果没有安装,请先安装相应的软件包。
Step1:运行命令
#gedit /etc/exports
编辑nfs 服务的配置文件(注意:第一次打开时该文件是空的),添加以下内容:
/opt/boot/mini2440 *(rw,sync,no_root_squash)
其中: /opt/boot/mini2440 表示 nfs 共享目录,它可以作为开发板的根
文件系统通过 nfs 挂接;
* 表示所有的客户机都可以挂接此目录
rw 表示挂接此目录的客户机对该目录有读写的权力
no_root_squash 表示允许挂接此目录的客户机享有该主机的 root 身份
Step2:启动服务
[root@localhost root]# setup
同上选择
[root@localhost root]# /etc/rc.d/init.d/nfs restart
这样nfs服务就打开了,但是nfs需要配置exports目录,就是共享出来的目录,最终在板子上mount上去,所有的程序最后都放在这个目录下,在板子上mount上去之后就能在这里运行。所以在板子上运行的程序实际上还是在主机上的,只不过是以网络文件系统(nfs)的方式挂载(mount)上去而已。
参考:http://blog.csdn.net/yang_dk/archive/2007/05/21/1619366.aspx