1、 嵌入式软件开发环境 安装和配置 信息技术有限公司 2009.06 1. 本手册之目 本手册适用于刚开始学习或从事嵌入式软件开发人员,他们对于嵌入式软件开发环境安装、配置知之甚少,因此安装、配置过程均给予了详细描述。 2. 所需工具及其用途 采取XP + 虚拟机 + Linux + Arm-Linux-Gcc+ Source Insight + Secure CRT: ü 在XP基础上安装虚拟机 ü 在虚拟机中安装Linux,借助Linux上编译器编译目标机上执行程序 ü 在Linux中安装Arm-
2、Linux-Gcc,用于编译嵌入式平台上执行程序 ü 在XP中安装Source Insight,用于编辑代码 ü 在XP中安装Secure CRT,连接到目标机,用于运行执行程序 如果你能熟练使用Linux,那么你可以直接在Linux中安装、配置相应组件、工具,不必使用XP、虚拟机,也不必安装Secure CRT。 2.1. XP操作系统 原则上可不要XP操作系统(也可是其它Windows操作系统),而是直接使用Linux操作系统。 但由于大多数人对于Windows操作系统很熟悉,Windows下很多工具使用起来也很方便,所以采用了XP + 虚拟机 + Linux模式。这样我们可以
3、在熟悉Windows下高效率工作。 2.2. VMWare 采用了XP + 虚拟机 + Linux模式,所以要安装一个虚拟机,根据实际情况,这里选用VMWare6.5.2。 2.3. Linux操作系统 对于Linux系统版本没有限制,Redhat、Ubuntu、Fedora等均可,这里选用目前比较常用Ubuntu 8.10。 Linux安装完成后,还需要配置或安装: ü 配置网络:必须配置好网络,方能进行以下操作 ü 设置更新源:设置Linux组建更新源,更新组件 ü 安装vmware tools:提供Windows及Linux互操作性 ü 安装SSH:只有安装SSH后,S
4、ecure CRT才能链接到Linux ü 安装NFS:用于在目标开发板上挂载Linux上目录 2.4. Arm-Linux-Gcc编译器 由于嵌入式运行平台局限性,不大可能在嵌入式运行平台中安装编译器,需要在Linux系统安装编译器来编译程序。 根据目标平台需要,这里选用arm-linux-gcc-2.95.3。 2.5. Source Insight Source Insight是一款功能强大源代码编辑软件,有强大函数管理能力、良好作色标示等;也可及版本管理软件集成,便于对源代码进行版本管理。 这里选用Source Insight 3.5。 2.6. SecureCRT
5、Secure CRT是一款常用仿真终端程序,在这里作用是连接到Linux系统,编译程序。 另外,Secure CRT还可嵌入式产品目标板,运行、调试程序。 这里选用是Secure CRT 5.0.3。 3. 详细安装步骤 3.1. 安装XP 鉴于XP普及程度,这里省略XP安装过程。 3.2. 安装Vmware station 双击Vmware station安装包,出现下图: 单击next,出现虚拟机安装类型选择对话框: 选择默认Typical选项,单击next,出现安装目录设置对话框: 单击ok,再单击next,出现下图: 单击install,开始安
6、装。安装完成后出现下图: 单击Finish,提示是否重新启动电脑,单击yes重启系统。 3.3. 安装Linux 双击桌面上Vmware Station图标,启动虚拟机,出现下图: 单击NewVirtual Macine,打开虚拟机安装向导: 选择Typical,单击next,出现下图: 选择安装源,这里选用ISO文件。单击next,出现下图: 、 输入用户、密码,单击next,出现下图: 输入虚拟机名称,选择虚拟机安装目录,单击next,出现下图: 输入或选择最大磁盘空间(建议不少于10G),选择Store virtual disk as a
7、single file,单击next,出现下图: 单击Customize Hardware,出现下图: 删除软驱(Flopy disk),单击Network Adaptor,选择Bridged并选中子项目。单击OK,回到上一个窗口。 单击Finish,然后耐心等待安装。 Linux安装完后,还必须配置、安装以下内容。 建议在配置、安装时以有管理员身份用户(例如root)登录,否则: ü 输入命令时需要在前边加上sudo ü 有些操作根本无法执行 n 允许root用户登录 正常情况下,root用户被禁止登录,这是一个安全保护机制。 通过以下步骤可允许root用
8、户登录: ü 点击SystemàAdministrationàLogin Window ü 若此时不是以管理员身份登录,则需要输入口令,出现下图: ü 允许Allow local system administrator login(红色箭头处),单击Close 如果root用户没有口令,可通过sudo passwd root修改root口令。 然后,你可以注销(Log out)当前用户,以root用户登录了。 n 配置网络 首先必须配置好网络,这是基础。否则,系统更新、及Windows互联等都无法实现。 用sudo gedit /etc/network/interfa
9、ces打开文件,是否包括以下内容(如不包括,请手工加入): auto eth0 iface eth0 inet static address 192.1.1.61 netmask 255.255.255.0 gateway 192.1.1.2 或者通过图形界面来设置,步骤如下。 点击SystemàPreferences->Network Configuration,出现下图: 单击Edit(若不是eth0,则最好先删除,然后再添加),出现下图(若不是以管理用户登录,则需要输入登录用户口名): 输入IP地址(Address),掩码(Netmask)、网关(Gatew
10、ay)、DNS,单击Apply。 如果配置文件interfaces中信息及界面中信息不匹配,系统会优先使用配置文件中信息。 欲验证网络是否设置成功,你可: ü ifconfig查看网络设置 ü sudo /etc/init.d/networking restart重启网络 ü sudo ifconfig eth0 down停止eth0,sudo ifconfig eth0 up启动eth0 ü ping 你WindowsIP,看是否能连通(有时也可能是Windows防火墙导致ping不能连通,你可以关闭防火墙或允许例外) ü 启动浏览器,在地址栏输入你熟悉网址,看是否能访问网页
11、 n 安装NFS 安装NFS目是共享Linux目录,使得目标开发板下可以访问Linux系统中目录。 要安装NFS:sudo aptitude install nfs-kernel-server 创建一个目录,如:/home/xianlong/mbplayer 修改配置文件:sudo gedit /etc/exports,增加下面一行并保存,退出 /home/xianlong/ mbplayer *(sync,rw,no_root_squash) 重启NFS:sudo /etc/init.d/nfs-kernel-server restart 成功后,你可在目标开发板上使用
12、下面命令挂载目录: mount -t nfs -o nolock 192.1.1.50:/home/xianlong/ mbplayer /mnt n 安装vmware tools 目前选择Linux版本Ubuntu 8.10会自动安装vmware tools。如果你选择版本不能自动安装vmware tools,请按照下面说明进行安装。 点击VMware Workstation菜单:VM --- Install VMware Tools ,系统会桌面上创建一个光盘图标,表示系统将VMware tool安装文件载入到光驱中了。 然后在终端中输入下面命令(假设登录用户名是huangw
13、ei): cp /cdrom/VMware Tools/VMwareTools-6.xx.tar.gz /home/huangwei/ tar vzxf VMwareTools-6.xx.tar.gz ./ cd vmware-tools-distrib/ ./vmware-install.pl n 实现Windows及Linux之间copy、paste功能 若能在Windows及Linux之间实现文件、文件内容copy、paste,那么将极大方便我们工作。 通过以下操作即可实现。 ü 点击SystemàPreferencesàSessions,出现下图: ü
14、单击Add,出现下图: ü 输入Name(随意),Command(/usr/bin/vmware-user),单击Add回到上一个窗口,单击Close ü 在Terminal中输入并回车:sudo vmware-user start n 添加共享目录 为了在Windows及Linux之间方便文件共享、传递,可在虚拟机中添加共享目录: 将Windows下目录共享成Linux系统中/mnt/hgfs下一个目录。 操作步骤如下: ü 在vmware中点击VMàSetting,在出现窗口中点击Options,并点击Shared Folders,出现下图: ü 单击A
15、dd,在出现共享向导窗口中单击Next,出现下图: ü 单击Browse,选择一个Windows目录;输入共享名(Name),单击Next ü 选中Enable this share,单击Finish。 这样一个共享就建立了。你可以: ü 在Windows下将文件拷贝到共享目录(例如d:\source),在Linux下可通过共享目录(例如/mnt/hgfs/source)直接使用这些文件 ü 在Linux下将文件拷贝到共享目录(例如/mnt/hgfs/source),在Windows下可通过共享目录(例如d:\source)直接使用这些文件 n 设置更新源、更新组件
16、设置良好更新源,可方便Linux系统组件更新。 输入命令并回车(最好事先将source.list备份,以防不测): sudo gedit /etc/apt/sources.list 输入以下内容,并保存文件。根据Ubuntu版本不同,必须选择不同更新源。 Ubuntu 8.10更新源: deb .U intrepid main restricted universe multiverse deb .U intrepid-security main restricted universe multiverse deb .U intrepid-updates main restri
17、cted universe multiverse deb .U intrepid-backports main restricted universe multiverse deb .U intrepid-proposed main restricted universe multiverse deb-src .U intrepid main restricted universe multiverse deb-src .U intrepid-security main restricted universe multiverse deb-src .U intrepid-update
18、s main restricted universe multiverse deb-src .U intrepid-backports main restricted universe multiverse deb-src .U intrepid-proposed main restricted universe multiverse Ubuntu 9.04更新源: deb jaunty main restricted universe multiverse deb jaunty-security main restricted universe multiverse deb
19、 jaunty-updates main restricted universe multiverse deb jaunty-backports main restricted universe multiverse deb jaunty-proposed main restricted universe multiverse deb-src jaunty main restricted universe multiverse deb-src jaunty-security main restricted universe multiverse deb-src jaunty
20、updates main restricted universe multiverse deb-src jaunty-backports main restricted universe multiverse deb-src jaunty-proposed main restricted universe multiverse 也可直接把附件sources_ubuntu_810.list或sources_ubuntu_904.list拷贝到/etc/apt/,并改名为sources.list。 然后输入命令并回车: sudo aptitude update 更新需要比较长
21、时间,耐心等待。 n 安装SSH 必须在Linux系统中安装好SSH,才可以在Windows中使用Secure CRT连接Linux。 在Linux中启动Termnial,输入以下命令并回车: sudo aptitude install openssh-server n 安装交叉编译工具 ü 所需软件:gcc-3.4.6-glibc-2.3.6-linuxthreads.tar.bz2 ü 修改/opt文件夹权限:sudo chmod a+w /opt ü 解压gcc到/opt目录:tar xjvf gcc-3.4.6-glibc-2.3.6-linuxthreads.
22、tar.bz2 -C /opt/ ü 修改环境变量:sudo gedit /home/xianlong/.bashrc,将下面一行添加到文件尾 export PATH=$PATH:/opt/crosstool/gcc-3.4.6-glibc-2.3.6/arm-linux/bin 注销后重新登录,就可以进行交叉编译了。 关于语言包:缺省安装时,都是安装英文版本,如果需要使用中文,请在SystemàLanguage中选择中文支持。 3.4. 安装Source Insight 安装过程太简单,不再给予详细说明。 安装完毕后,将si35_settings.rar文件解压到:我文
23、档àSource Insightà Settings目录下。其中有设置好代码格式配置信息,包括各种不同对象字体、颜色等,让代码看起来比较美观,也很容易区分信息类型。 在Windows共享目录(例如d:\source)中创建工程目录(例如mbplayer),将源码等拷贝到工程目录,然后使用Source Insight创建工程,编写源代码。 3.5. 安装Secure CRT 安装过程太简单,不再给予详细说明。 安装完毕后,双击Secure CRT,出现下图: 点击 Connet…,出现下图: 输入虚拟机IP地址和登录虚拟机用户,如果成功会出现下图: 输入口令,选
24、中Save password(这样你今后可不用每次都输入口令),单击OK。稍后若出现命令行提示符,则说明成功登录。 也许防火墙会禁止Secure CRT,你可以通过防火墙à例外à添加程序,把Secure CRT加入到例外列表中,这样防火墙就不会禁止Secure CRT了。 Secure CRT登录成功后,进入项目目录(例如/mnt/hgfs/source/mbplayer/app),编译程序,将目标程序拷贝到Linux下NFS共享目录(例如/home/xianlong/ mbplayer)。 然后,在目标开发板/mnt目录(挂载了/home/xianlong/ mbplayer)下运
25、行程序即可。 3.6. 连接目标开发板 可使用Secure CRT连接目标开发板,点击 Connet…,出现下图: 按照图示设置,点击Connect。 将目标开发板及电脑连接,假设接口为COM1;然后加电启动目标开发板。 若Secure CRT窗口中开始显示如下信息,则说明设置成功。 U-Boot 1.2.0 (Mar 30 2009 - 17:20:22) DRAM: 128 MB Flash: 8 MB NAND: No NAND device found!!! 0 MB In: serial Out: serial Err: se
26、rial MAC: 00:77:bf:00:70:bf Hit any key to stop autoboot: 0 update exit: No USB Connect! ## Booting image at 00200000 ... Image Name: Linux-2.6.12.5 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 1891136 Bytes = 1.8 MB Load Address: 00008000 Entry Poin
27、t: 00008000 OK ## Loading Ramdisk Image at 00600000 ... Image Name: ARM Linux RAMDisk Image Type: ARM Linux RAMDisk Image (uncompressed) Data Size: 3758869 Bytes = 3.6 MB Load Address: 01000000 Entry Point: 01000000 Starting kernel ... Uncompressing Linux............................................................................................................................. done, booting the kernel. 然后,你可使用以下命令及其它命令,运行、调试程序: mount -t nfs -o nolock 192.1.1.50:/home/xianlong/ mbplayer /mnt ./mp_main 29 / 29






