微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于ARM和Linux交叉开发环境的搭建

基于ARM和Linux交叉开发环境的搭建

时间:12-16 来源:互联网 点击:

发板的Linux系统与虚拟机的LintLx通过NFS实现文件共享的方法与步骤:

1)在虚拟机linux配置nfs服务,编辑nfs配置文件/etdexports,设置共享目录如:vi/etc/exports,添加:/root/nfs—share·(rw,sync,no—root—squash)。rW表示允许下位机读写该目录,no_root_squash允许下位机以主机root用户身份挂载根文件系统。

2)在虚拟机linux启动NFS服务:(修改配置文件后就需要蕈新启动施服务)#/etc/init.d/nfs reSTart或者用命令:#service nfs restarto.

3)防火墙的关闭。选择系统设置一>安全级别,将安全级别改为“无防火墙”。

4)用交叉网线连接PC机(虚拟机)与开发板,目的让两个linux处在同一个网络内。

开发板的ip地址是:192.168.2.223,因此配置虚拟机ip为192.168.2开头的ip地址,如可用下列命令配置:#ifcONfigethO 192.168.2.23。

5)在开发板linux系统中挂载虚拟机linux的NFS共享目录,执行下列命令:#mkdir/tmp/nfs#mount—t nfs一0 nolock192.168.2.23:/root/nfs—share/trap/nfs。

2.4交叉调试器的制作

2.4.1交叉调试器的结构

程序的调试足检杏程序正确性、可靠性、稳定性的重要手段,也是应用程序开发必不可少的组成部分。嵌入式软件开发过程中的交叉调试与本地软件开发过程中的调试方式有所差别。本地软件开发调试器与被调试的程序往往运行在同一台计算机}:。而嵌入式软件开发过程中,调试时采用的是在宿主机和目标机之间进行的交叉调试。调试器运行在宿主机,但被调试的进程却是运行在目标板。调试器和被调试进程通过串口或者网络进行通信,调试器可以控制、访问被调试进程,读取被调试进程的当前状态,并能够改变被调试进程的运行状态。

2.4.2制作交叉调试器的方法

1)解压源码包:tar zxf gdb一6.0.tar.gz

2)配置:cd gdb一6.0

mkdir build..arm..1inux

cd build..arm..1inux

../configure--target=arm·linux一一prefix=/usr/local/arm/2.95.3/

3)编译:make

4)安装:make install

在/usr/locaL/arm/2.95.3/bin/目录下生成alTfl-linuxgdb工具

5)编译生成针对f1.Eln处理器的gdbserver

a.进入sdb源代码包中的gdb$erver目录

cd sdb-6.0

cd gdb/gdbserver

b.配置生成gdbserver

chmod U+X configure

CC=arnl—linux—gcc./configure一一host=arm-linux


6)通过凼,将gdbserver/gdbreplay到目标板中

7)启动目标板上的gdbserversabserver 192.168.1.88:2345 cross-teat其中192.168.1.88是目标板的IP地址。2345是任意指定的端口,也可以是其他端口。

8)启动宿主机端arm.1inux-gdb调试器在宿主机的工作目录中有对应的程序和源文件

#arm·hnux-柚CI'OS8一teat

(gdb)target remote 192.168.1.88:2345

连接远程gdbserver

(sab)b main

设置断点

(Sdb)C运行

3 结束语

本文在分析了GEC2410开发板和Linux的特点的基础上,介绍了嵌入式Linux开发平台的搭建过程,并详细介绍了配置NFS服务和制作交叉调试器的方法和步骤。这样就可以在此基础上进行各种驱动程序和应用程序的开发。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top