实验四 配置交叉编译环境
一、 实验目的:
建立宿主 PC 机端的交叉编译环境。
建立宿主 PC 机端的交叉编译环境。
二、 实验设备:
已安装好VMware虚拟机和Linux的PC机一台
已安装好VMware虚拟机和Linux的PC机一台
三、 实验原理及步骤:
绝大多数的 Linux 软件开发都是以native 方式进行的,即本机(HOST)开发、调试,本机运行的方式。这种方式通常不适合于嵌入式系统的软件开发,因为对于嵌入式系统的开发,没有足够的资源在本机(即板上系统)运行开发工具和调试工具。通常嵌入式系统软件的开发采用交叉编译调试的方式。交叉编译调试环境建立在宿主机(即一台PC 机)上,对应的开发板叫做目标板,开发时使用宿主机上的交叉编译、汇编及连接工具形成可执行的二进制代码,(这种可执行代码并不能在宿主机上执行,而只能在目标板上执行。)然后把可执行文件下载到目标机上运行。
在宿主机上我们要建立交叉编译调试的开发环境。环境的建立需要许多的软件模块协同工作,
绝大多数的 Linux 软件开发都是以native 方式进行的,即本机(HOST)开发、调试,本机运行的方式。这种方式通常不适合于嵌入式系统的软件开发,因为对于嵌入式系统的开发,没有足够的资源在本机(即板上系统)运行开发工具和调试工具。通常嵌入式系统软件的开发采用交叉编译调试的方式。交叉编译调试环境建立在宿主机(即一台PC 机)上,对应的开发板叫做目标板,开发时使用宿主机上的交叉编译、汇编及连接工具形成可执行的二进制代码,(这种可执行代码并不能在宿主机上执行,而只能在目标板上执行。)然后把可执行文件下载到目标机上运行。
在宿主机上我们要建立交叉编译调试的开发环境。环境的建立需要许多的软件模块协同工作,
这将是一个比较繁杂的工作,但现在已完全由光盘上的安装脚本自动完成了。
1、下面我们就开始安装光盘中的内容到宿主PC 机上。
将光盘插入linux怎么读光盘CDROM ,打开一个终端窗口(Terminal),点击【红帽->System Tools->Terminal】
启动终端窗口,请输入下列3 条命令:
① mkdir /mnt/cdrom
② mount /dev/cdrom /mnt/cdrom /*挂载光盘*/
③ cd /mnt/cdrom/Linux /*进入光盘的Linux 安装目录*/
④ ./Install /*执行开发环境自动安装脚本*/
当开发环境安装完毕后,会在根目录下生成一个目录:/pxa270_linux :/*该目录中包含以下目录*/
blob_ours : 该目录是BootLoader 的源码目录, 在此目录中重新编译blob。
fs:该目录中包含了所有PXA270-RP 目标板所使用的文件系统。
IMAGE:该目录中包含了所有可以下载并烧写到PXA270-RP 目标板上运行的核 和文件系统。
1、下面我们就开始安装光盘中的内容到宿主PC 机上。
将光盘插入linux怎么读光盘CDROM ,打开一个终端窗口(Terminal),点击【红帽->System Tools->Terminal】
启动终端窗口,请输入下列3 条命令:
① mkdir /mnt/cdrom
② mount /dev/cdrom /mnt/cdrom /*挂载光盘*/
③ cd /mnt/cdrom/Linux /*进入光盘的Linux 安装目录*/
④ ./Install /*执行开发环境自动安装脚本*/
当开发环境安装完毕后,会在根目录下生成一个目录:/pxa270_linux :/*该目录中包含以下目录*/
blob_ours : 该目录是BootLoader 的源码目录, 在此目录中重新编译blob。
fs:该目录中包含了所有PXA270-RP 目标板所使用的文件系统。
IMAGE:该目录中包含了所有可以下载并烧写到PXA270-RP 目标板上运行的核 和文件系统。
linux:该目录是一个链接到linux-2.4.21 的目录。
linux-2.4.21:该目录中包含了嵌入式Linux 操作系统的源码,在此目录中可以重新定制编译内核。
Qt:该目录中包含了嵌入式图形化界面应用程序开发所需要的软件安装包。Experiment_Key:该目录中包含了所有实验的源代码。
tools:该目录包含了烧写blob 的工具和blob 源文件。
在/usr/local 下产生一个目录:arm-linux : 嵌入式系统开发交叉编译器。这里包含arm-linux-gcc, arm-linux-g++等常用ARM 交叉编译器,编译出来的可执行二进制代码只能运行在以ARM为核心处理器上。
2、我们为了可以在任何目录下直接使用上述编译器,我们需要修改文件/etc/profile 这个文件,在上面同一个终端窗口中,请输入下列1 条命令:
① vi /etc/profile
这时,将进入vi 编辑器所显示的profile 文件中,单击键盘A 键,进入vi 编辑器的输入状态(Insert),通过键盘上下键移动光标到path manipulation语句段,在后面加入: pathmunge /usr/local/arm-linux/bin,输入完成后,请单击Esc 键进入vi 编辑器的命令状态,然后单击键
linux-2.4.21:该目录中包含了嵌入式Linux 操作系统的源码,在此目录中可以重新定制编译内核。
Qt:该目录中包含了嵌入式图形化界面应用程序开发所需要的软件安装包。Experiment_Key:该目录中包含了所有实验的源代码。
tools:该目录包含了烧写blob 的工具和blob 源文件。
在/usr/local 下产生一个目录:arm-linux : 嵌入式系统开发交叉编译器。这里包含arm-linux-gcc, arm-linux-g++等常用ARM 交叉编译器,编译出来的可执行二进制代码只能运行在以ARM为核心处理器上。
2、我们为了可以在任何目录下直接使用上述编译器,我们需要修改文件/etc/profile 这个文件,在上面同一个终端窗口中,请输入下列1 条命令:
① vi /etc/profile
这时,将进入vi 编辑器所显示的profile 文件中,单击键盘A 键,进入vi 编辑器的输入状态(Insert),通过键盘上下键移动光标到path manipulation语句段,在后面加入: pathmunge /usr/local/arm-linux/bin,输入完成后,请单击Esc 键进入vi 编辑器的命令状态,然后单击键
盘输入:wq,保存已编辑的profile 文件并退出vi 编辑器。
3、我们可以试验我们是否成功设置了交叉编译环境。
①点击【红帽->Log Out】启动关闭窗口,选择 Log Out 选项,并点击 OK ,重新以 root身份,输入登录密码,登录Linux 系统。
②打开一个终端窗口(Terminal),点击【红帽->System Tools->Terminal】启动终端窗口,输入命令:
③ arm-linux-gcc –v /*打印出交叉编译器的版本信息,则表示我们的设置成功。之后我们可以在任何终端目录下执行arm-linux-gcc 命令,而不用进入该命令所在的目录中。
3、我们可以试验我们是否成功设置了交叉编译环境。
①点击【红帽->Log Out】启动关闭窗口,选择 Log Out 选项,并点击 OK ,重新以 root身份,输入登录密码,登录Linux 系统。
②打开一个终端窗口(Terminal),点击【红帽->System Tools->Terminal】启动终端窗口,输入命令:
③ arm-linux-gcc –v /*打印出交叉编译器的版本信息,则表示我们的设置成功。之后我们可以在任何终端目录下执行arm-linux-gcc 命令,而不用进入该命令所在的目录中。
四、 实验结论
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论