linux-3.15.4内核移植

1.解压内核

 sudo xz -d linux-3.15.4.tar.xz

sudo tar xvf linux-3.15.4.tar

2.修改内核源码顶层的Makefile

sudo vim Makefile

arch=arm

CROSS_COMPILE=arm-linux-

3.vim arch/arm/mach-s3c24xx/mach-smdk2440.c

s3c24xx_init_clocks(12000000);
4.make menuconfig命令配置内核,使用默认的配置文件arch/arm/configs/s3c2410_defconfig,选择CPU、在配置单中加入自己的信息、支持EABI(它针对浮点数运算做了优化,使用它编译出来的应用程序效率更高)

注:在Ubuntu下make menuconfig会报错,错误信息如下:

*** Unable to find the ncurses libraries or the
*** required header files.
*** 'make menuconfig' requires the ncurses libraries.
***
*** Install ncurses (ncurses-devel) and try again.
***
make[1]: *** [scripts/kconfig/dochecklxdialog] 错误 1
make: *** [menuconfig] 错误 2

解决方法:

在命令行中输入:

sudo apt-get install libncurses5-dev

然后在make menuconfig,成功。

Ncurses是一个能提供功能键定义(快捷键),屏幕绘制以及基于文本终端的图形互动功能的动态库。

5.修改机器码,在arch/arm/tools/mach-types中,将S3C2440对应的机器码改为Uboot传进来的一致。

原文地址:https://www.cnblogs.com/zpehome/p/3829947.html