内核-编译器-busybox版本之间的关系

内核-编译器-busybox版本之间的关系

前言:本文主要记录用各个版本的编译器编译出来代码运行结果。

1. (zImage)

Busybox-1.3.2: arm-linux-gcc-3.3.2

Linux-2.6.26.3:arm-linux-gcc-3.4.1

编译结果:正常通过。

运行结果:看到控制台

2. (zImage2)

Busybox-1.3.2: arm-linux-gcc-3.3.2

Linux-2.6.30: arm-linux-gcc-3.4.1

编译结果:正常通过。

运行结果:看到控制台

3.

Busybox-1.3.2: arm-linux-gcc-3.4.1

Linux-2.6.30: arm-linux-gcc-3.4.1

编译结果:Busybox-1.3.2编译不通过

运行结果:XXX

4. (zImage3)

Busybox-1.3.2: arm-linux-gcc-3.3.2

Linux-2.6.30: arm-linux-gcc-4.3.2 (linux编译的时候不选上eabi)

编译结果:linux编译不通过,要把Linux-2.6.30目录下的Makefile的194行改为

194 CROSS_COMPILE ?=arm-none-linux-gnueabi-

编译才通过

运行结果:看到控制台

5. (zImage4)

Busybox-1.3.2: arm-linux-gcc-3.3.2

Linux-2.6.30: arm-linux-gcc-4.3.2 (linux编译的时候选上eabi)

编译结果:linux编译不通过,要把Linux-2.6.30目录下的Makefile的194行改为

194 CROSS_COMPILE ?=arm-none-linux-gnueabi-

编译才通过

运行结果:看到控制台

6. (***)

Busybox-1.3.2: arm-linux-gcc-4.3.2

Linux-2.6.30: arm-linux-gcc-4.3.2 (linux编译的时候选上eabi)

编译结果:Busybox-1.3.2编译不通过

运行结果:XXX

7. (zImage4)

Busybox-1.15.2(这个版本的文件系统是支持eabi的): arm-linux-gcc-4.3.2

Linux-2.6.30: arm-linux-gcc-4.3.2 (linux编译的时候选上eabi)

编译结果:正常通过

运行结果:运行正常 (难能可贵的是在secureCRT终端下TAB键、四个箭头键、delete键、退格键都能够正常使用)

8. (zImage3)

Busybox-1.15.2(这个版本的文件系统是支持eabi的): arm-linux-gcc-4.3.2

Linux-2.6.30: arm-linux-gcc-4.3.2 (linux编译的时候不选上eabi)

编译结果:正常通过

运行结果:一大堆错误

9.( zImage2)

Busybox-1.15.2(这个版本的文件系统是支持eabi的): arm-linux-gcc-4.3.2

Linux-2.6.30: arm-linux-gcc-3.4.1 (linux编译的时候不选上eabi)

编译结果:正常通过

运行结果:一大堆错误(同 7. 中的错误)

10.( zImage)

Busybox-1.15.2(这个版本的文件系统是支持eabi的): arm-linux-gcc-4.3.2

Linux-2.6.26.3: arm-linux-gcc-3.4.1 (linux编译的时候不选上eabi)

编译结果:正常通过

运行结果:有几行错误

11.下面情况编译都是不通过的

Busybox-1.15.2: arm-linux-gcc-3.4.1或arm-linux-3.3.2

Linux-2.6.30(选上支持eabi): arm-linux-gcc-3.4.1或arm-linux-3.3.2

12.通过以上11种情况的分析对内核和文件系统是否支持eabi的搭配做如下总结:

内核 (1:支持eabi,0:不支持eabi)文件系统 (1:支持eabi,0:不支持eabi)结果(1:可以运行,0:不可运行)001010101111

我知道有一种爱情,叫做与你白头,有一种幸福,叫做和你相伴。

内核-编译器-busybox版本之间的关系

相关文章:

你感兴趣的文章:

标签云: