搜档网
当前位置:搜档网 › 交叉编译环境建立的基本步骤

交叉编译环境建立的基本步骤

学习arm的的时候在完成linux虚拟机安装以及开发板操作系统烧录好后要进行嵌入式开发的第一步工作就是建立交叉编译环境,
经过一两天的摸索基本了解了建立交叉编译环境建立的基本思路,以下先总结建立环境的思路:
1.首先了解所需软件及其他的工具:
1):交叉编译工具arm-none-linux-gnueabi-gcc,主要编译产生底层arm板可执行的文件,建议直接安装包含各种编译工具的软件包
2):串口终端控制软件,主要通过串口实现对底层arm板的交互控制,可以使用微软自带的超级终端,这里建议使用专用软件Zoc Terminal
2. 安装交叉编译工具,并添加安装后编译器的具体目录到环境变量
3. 由于编译完成后需要将生成文件下载到arm板上,因此需要建立PC机上的linux与底层arm板上的linux通信机制,以实现文件传输。
实现方式有多种,这里建议使用网络文件共享系统NFS
4. 在主PC机上的linux系统设置好以后,当每次启动arm板后需要挂载这个NFS的共享文件目录

以下是具体的操作步骤:
1. 为了学习方便一般需要实现虚拟机与主机之间的文件共享,具体实现方法很多,这里使用vmware提供的方法:
选择vmware的VM->settings->Options->Shared Folders->Add,建立好目录(可以选为D:/Linuxshare,按照实际方便任意选取)以后点击OK即可,
此时这个共享目录在虚拟机的linux文件系统下的目录为:/mnt/hgfs/Linuxshare
2. 将所需的交叉编译工具包arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2复制到第一步中建立的共享目录
3. 将2中的工具包解压安装,具体命令为:#tar xvzf /mnt/hgfs/Linuxshare/arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 -C / ,
解压压安装以后其具体的目录为:/user/local/arm/arm-2009q1/
3. 把编译器路径加入系统环境命令,运行命令:#gedit /root/.bashrc,编辑/root/.bashrc文件,在最后一行添加
export PATH=$PATH:/usr/local/arm/arm-2009q1/bin,保存退出
4. 运行命令:#source /root/.bashrc,使其生效
5. 开始搭建NFS网络文件系统,使目标板挂载建立好的共享根目录。先建立一个共享目录,可以任取,按照习惯方便,
本人建立在自己的用户目录下:/home/qianrunfa/nfs
6. 修改配置文件/etc/exports,在里面添加一句:/home/qianrunfa/nfs 192.168.0.*(rw,sync,no_root_squash),保存退出
其中/home/qianrunfa/nfs为所创建的在上位机共享根文件系统,192.168.0.*为下位机的ip,rw表示允许下位读写改目录,no_root_squash表示允许下位机以root用户挂载改根文件系统
7. 修改配置文件/etc/exports的权限,具体命令为:#chmod 644 /etc/exports,即所有用户可读
8. 执行命令:#/etc/init.d/nfs reload,使修改生效
9. 关闭防火墙,设置好本虚拟机的ip,

注意ip要与下位机的ip在同一网段,重启NFS系统:#/etc/init.d/nfs restart
10. 打开Zoc终端,启动下位机arm板
11. 设置好下位机的ip地址,要与6中的ip地址一样
12. 在用户目录下建立一个vi编辑的mountnfs.sh文件,输入命令:#mount -t nfs 192.168.0.2:/home/qianrunfa/nfs /mnt -o nolock,保存退出
13. 执行12中的mountnfs.sh文件即可将上位机的nfs共享文件挂载到下位机的文件目录/mnt中,此时即可调用并执行编译好的可执行文件
14. 若13中的挂载命令不成功,先检查上位机与下位机的ip是否设置正确,然后再上位机中重启nfs
15. 此时就可以在上位机中编写程序并编译了

相关主题