交叉开发环境

交叉开发环境的网络设置(arm_linux)

主机(windowsXP) :192.168.1.106

主机(虚拟机Linux):192.168.1.112

开发板(arm_linux):192.168.1.6

三个操作系统的IP地址要设在一个网段里(192.168.1.*)

当开发板启动时进入bootloader模式,要使用其网络传输文件功能时,bootloader的IP也要设为一个网段192.168.1.55(有的bootloader需要设置MAC地址12:45:77:11:22:ab)

交叉开发环境构建:

1. 安装交叉开发工具

a) 拷贝交叉开发工具软件包到指定目录.( cross-3.3.2.tar.bz2版本)

#cp cross-3.3.2.tar.bz2  /usr/local/arm/

在当前目录解压文件

#tar xjvf arm.tar.bz2

b) 设置编译器路径

#vi /etc/profile

下面是profile要添加内容的位置

#path manipulation

if [ ‘id –u’ = 0]; then

pathmunge /sbin

pathmunge /usr/sbin

pathmunge /usr/local/sbin

pathmunge /usr/local/arm/3.3.2/bin //这行是添加的编译器路径

fi

保存profile文件

#sh /etc/profile

//系统注销,使新的profile文件生效.

如安装好,在shell命令行输入arm,可用TAB键,命令补齐打出arm-linux-

查看gcc版本号

#arm-linux-gcc –v

2. 配置NFS

开发板同虚拟机IP地址要在一个网段里.

可手工修改NFS配置文件exports.

#vi /etc/exports

/home    192.168.1.*   (rw,sync)

//上述设置内容是/home目录,可以被192.168.1.*网段挂载.

重启NFS服务

#service nfs restart

本地挂载测试.

#mount  192.168.1.112:/home  /mnt/nfs

//192.168.1.112为linux IP,/home为可挂载的目录,/mnt/nfs为挂载到本机的目录(/mnt/nfs/目录要在存在,不存在可#mkdir /mnt/nfs创建).

#ls /mnt/nfs   //查看是否挂载成功.

开发板挂载

#ping 192.168.1.112  //首先虚拟机linux IP

#mount  -t  nfs  -o  nolock  192.168.1.112:/home  /mnt/nfs

#cd /mnt/nfs

3. 交叉开发调试程序

在虚拟机Linux建立程序的源文件.

#vi hello.c

#arm-linux-gcc –o hello hello.c //使用arm-linux-gcc 编译源程序.

#cp hello /home    //编译好的可执行文件copy到mount的目录.

#chmod 777 hello  //修改执行文件的权限

在开发板的挂载目录运行测试.

[@/mnt/nfs]#./hello

tftp服务安装的问题

里面选择everything,导致没有安装tftp服务(典型的就是安装完成后没有/tftpboot目录,setup-->system services里面也没有tftp选项),这时若要重新完全安装就太麻烦了,可如下单独安装改服务:

如果用下面一条命令能够看到服务已经启动, 则不用安装, 否则需要按1或2点安装tftp-server服务器.

[[email protected] arm]#netstat -a | grep tftp

udp 0 0 *:tftp *:*

有些客户在安装REDHAT LINUX 时,有时没有选Custom-->Packages

1. 安装tftp的方法:

#rpm  –ivh   tftp-server-0.32-4.i386.rpm

(i-install   v-verbose(详细的) h-hash(输出#))

其中tftp-server-0.32-4.i386.rpm在Redhat9的第3张光盘里面。

路径:/mnt/cdrom/RedHat/RPMS/

该软件也可从网上下载得到。

2. 修改配置文件

[[email protected] btools]#vi   /etc/xinetd.d/tftp

service tftp

{

disable = no

socket_type = dgram

protocol = udp

wait = yes

user = root

server = /usr/sbin/in.tftpd

server_args = -s /tftpboot

per_source = 11

cps = 100 2

flags = IPv4

}

检查tftp服务是否打开

[[email protected] btools]#chkconfig  --list

如果tftp的服务没有打开,则用下面命令打开tftp服务开关

[[email protected] btools]#chkconfig  tftp  on

重启服务

#/etc/init.d/xinetd  restart

#netstat -a | grep tftp

udp 0 0 *:tftp *:*

进入开发板的命令终端

#tftp  -g –r  hello 192.168.1.112

//从远程主机192.168.1.112下载文件hello

#ls//查看下文件是否下载成功

#chmod 777 hello   //修改权限

#./hello//运行程序

时间: 2024-10-12 14:37:28

交叉开发环境的相关文章

Linux交叉开发环境搭建 —— 效率之源

楼主今天终于把所有Linux开发环境需要的软件下载完毕了.虽然以前也是搭建过的,时间久了又折腾了一晚上. 交叉环境: Windows.Linux文件共享 SecureCRT 连接虚拟机终端 工具: VirtualBox ubuntu-16.04-desktop-amd64.iso(ubuntu官网下载) SecureCRT Source Insight 虚拟机搭建: 检查bios虚拟技术功能开启 新建虚拟机,选择创建虚拟硬盘,其余均默认 点击新建虚拟机设置->存储->选中没有光盘->点击

GNU Freestanding(Naked)C ARM交叉开发环境创建与测试

0 由来 在我的博文GNU ARM交叉汇编环境的搭建与测试中,详细讲解了GNU ARM汇编环境的创建与使用方法.实际开发中,直接使用汇编语言写的代码往往很少,尽在系统启动和性能要求极其苛刻的时候才会用到汇编代码.在可读性.可移植性.逻辑表达能力方面,C语言的表现要比汇编强太多,正是C语言的这种优势造就了Unix世界,造就了Linux在多种平台上顺利编译运行的活泼场面. 所以,在嵌入式开发领域,C语言是主力语言.在使用开发ARM上运行的程序之前,必须构建一个好用的C交叉编译环境.在博文Freest

ActiveReports 9实战教程(1): 手把手搭建好开发环境Visual Studio 2013 社区版

ActiveReports9刚刚公布3天.微软就公布了 Visual Studio Community 2013 开发环境. Visual Studio Community 2013 提供完整功能的 IDE ,可开发 Windows.Android 和 iOS 应用.支持:C++, Python, HTML5, JavaScript, 和 C#,VB, F# 语言的开发.提供设计器.编辑器.调试器和诊断工具. 最牛逼的在于你全然能够免费使用该工具: 能够正大光明的免费使用visual studi

搭建web前端开发环境

目录: 搭建Web开发环境 1.辅助工具——PS(切图.修图.测量) 2.开发.调试工具——常用开发工具和调试工具的功能介绍和使用方法 内容: 切图设计稿(.pdf文件) ———————————— 产出物(如.png .jpg文件)                          素材切出        为什么切图?                给网页提供图片素材                HTML:img    <img src="images/avatar.jpg"

gcc for Windows 开发环境介绍

导读: 在Windows操作系统下的gcc 第一节 GCC家族概览 GCC是一个原本用于Unix-like系统下编程的编译器. 只是,如今GCC也有了很多Win32下的移植版本号.所以,或许对于很多Windows开发人员来说,GCC还是一个比較陌生的东西.所以,我希望通过这章的叙述,让你--一个Windows开发人员对GCC这一个优秀的编译器有一个大概的了解. 历史 GCC是GNU公社的一个项目.是一个用于编程开发的自由编译器.最初,GCC仅仅是一个C语言编译器,他是GNU C Compiler

配置eclipse linux嵌入式 集成开发环境(编译部分)详细

开发环境: ubuntu12.04(64位) eclipse (c/c++)luna 注意:本文主要讲将eclipse配置好编译器. 远程调试的部分请看另一篇帖子 eclipse 调试环境配置. 我的arm-linux-gcc 路径是:/opt/EmbedSky/4.3.3/bin/arm-linux-gcc  (什么?怎么看arm-linux-gcc的路径??  你可以使用 which arm-linux-gcc 来察看) 我的linux 内核路径是:/opt/EmbedSky/linux-2

s3c6410 Linux 驱动开发环境搭建

s3c6410 Linux 驱动开发环境搭建 -- 既然你是做Linux开发的,你还用虚拟机? 非常多人都在win下做开发,于是SD_writer.exe之类的烧写工具"大行其道",多是用虚拟机Linux. 全然转到Linux下学习開始蛮不爽的,开发板制作商送的教程都是些讲Win-CE的东东,感觉实质性的东西没什么.对于全然用Linux做开发的技术解说非常少,连烧写SD卡都用的win以下的程序.后来找了些资料,整理在这里,希望留给有心人.共同营造一个更好的共同学习的环境. 当别人遇到困

搭建Android开发环境读书心得

搭建Android开发环境主要包括五部分的知识,首先需要知道Android底层开发需要哪些工具,安装JDK,搭建Android应用程序开发环境,安装Android NDK开发环境和安装交叉编译环境. 开发.测试和调试Linux驱动.HAL程序库需要使用JDK6或以上版本.eclipse3.4或以上版本.ADT.CDT.Android SDK.Android NDK.交叉编译环境.Linux内核源代码.Android源代码以及用于调试开发板的串口工具:minicom. 在Ubuntu Linux中

1.裸机开发环境的体验(Redhat 6.4 + vbox)

1.裸机开发环境的体验(Redhat 6.4 + vbox) 一.裸机开发的一般流程 注意:这是假定你已经搭建好了裸机开发环境 我们裸机的一般开发流程:图1-1: 图1-1 裸机开发流程 由于在这篇文章里是体验裸机程序,所以我们跳过了1.2步骤.直接从第三步开始: 二.交叉工具链的安装: 在这里,我们编写的程序是要在开发板运行的,不是在pc机,所以pc机的gcc等编译器不再适用了,我们必须按照交叉工具链.由于我们的程序是要在ARM架构运行的.所以安装的工具链是arm-linux-*的工具链. 我