linux实验报告makefile,linux实验二交叉编译和Makefile实验报告.doc

linux实验二交叉编译和Makefile实验报告

实验二 交叉编译和Makefile

实验目的

了解和掌握交叉编译模式和方法;

了解和掌握makefile文件的编写

学会使用交叉编译工具和make工具

实验环境

预装redhat9.0(内核版本2.4.x)的PC机一台,XScale嵌入式实验箱一台(已构建嵌入式linux系统),以太网线一根,交叉编译工具链。

实验步骤

安装交叉编译器arm-linux-gcc,并配置环境。

(解压hybus-arm-linux-R1.1.tar.gz文件。

[root @localhost ~]# cp XSBASE/xsbase/Toolchain/hybus-arm-linux-R1.1.tar.gz /usr/local

[root @localhost ~]# tar zvxf /usr/local/hybus-arm-linux-R1.1.tar.gz

此时是hybus-arm-linux-R1.1.tar.gz解压完成时候的截图。

(设置路径。

[root @localhost local]# vi ~/.bash_profile

此时将会进入编辑路径的编辑框,在编辑框内添加一条路径即可。

添加的路径为:PATH=$PATH:/usr/local/hybus-arm-linux-R1.1/bin

当编辑完上面的时候,按下ESC,然后输入":wq"退出编辑框。

(使路径生效。

[root @localhost local]# source ~/.bash_profile

④测试arm-linux-gcc是否配置成功。

当出现arm-linux-gcc:No input files的时候,说明已经配置成功,没有输入文件是说明此时没有对任何一个文件进行交叉编译。

Linux简单程序设计。

(使用vi等编辑器编写一个简单程序,我现在是实现输出50以内的奇数和偶数。

[root @localhost ~]# mkdir 2008550533

[root @localhost ~]# cd 2008550533

[root @localhost 2008550533]# mkdir hehui

[root @localhost ~]# cd hehui

[root @localhost hehui]# vi ji_oushu.c

/*输出50以内的奇数和偶数*/

#include

void main()

{

int n=50;

int i=0,j=0;

printf("%d以内的奇数为:",n);

for(i=0;i

{

if(i%2==1)

printf("%d ",i);

}

printf("\n");

printf("%d以内的偶数为:",n);

for(j=0;j

{

if(j%2==0)

printf("%d ",j);

}

printf("\n");

}

(用gcc编译器编译并运行程序;使用file命令查看编译后的可执行文件信息。

[root @localhost hehui]# gcc ji_oushu.c -o hmily

[root @localhost hehui]# file hmily

hmily: ELF 32-bit LSB executable, Intel PXA255/210 PCHCIA, version 1 (SYSV), for GNU/Linux 2.4, dynamically linked (uses shared libs), for GNU/Linux 2.4, not stripped

(运行gcc编译出来的可执行文件。

[root @localhost hehui]# ./hmily

④使用交叉编译器编译并运行。

[root @localhost hehui]# arm-linux-gcc -o hmily ji_oushu.c

打开另外一个终端,输入minicom进入板子里去。

操作一下命令。

XSBase255B>boot

XSBASE login:root

[root@XSBASE /root]$ftp 7

ftp>get ~/hehui/hmily

然后按下Ctrl + D

[root@XSBASE /root]$chmod +x hmily

[root@XSBASE /root]$./hmily

Makefile文件的编写。

(编写一个文件prime.h,包含一个判断int类型的数是否为素数。

[root @localhost ~]# mkdir 2008550533/prime

[root @localhost ~]# cd 2008550533/prime

[root @local

你可能感兴趣的:(linux实验报告makefile,linux实验二交叉编译和Makefile实验报告.doc)