ubuntu下缺省编译内核linux2.6.26

来源:互联网 发布:淘宝全店怎么托管 编辑:程序博客网 时间:2024/05/21 14:47
ubuntu下编译linux2.6.26内核

编译linux内核

高版本的ubuntu在编译老版本的linux内核时可能会报错,linux2.6.26下使用gcc4.4
分别查看gcc版本:
gcc  –version
安装的ubuntu12.4的gcc版本是4.7.4,先安装gcc 4.4

配置gcc:

sudo apt-get update

sudo apt-get install gcc-4.4
gcc由于是系统安装的,命令文件都自动放在了/usr/bin中,将gcc替换为4.4版本:
cd  /usr/bin
ln -sf ./gcc-4.4 gcc
查看下gcc版本:
gcc -v
显示:
gcc version 4.4.7 (Ubuntu/Linaro 4.4.7-2ubuntu2)
这样gcc就是安装配置成功.

配置安装库

在编译内核前,需要配置一下编译环境,在终端输入:
sudo apt-get install  libncurses5-dev
libncurses5-dev是为了能配置内核,与 make menuconfig 命令有关。


配置内核:

下面可以开始编译内核了,解压linux内核文件到当前文件夹,首先进行配置:
sudo make menuconfig
进入一个图形界面,什么都不用改,直接到最下面点save然后退出,之后直接输入:
sudo make
到这里就大功告成了,等待吧.....

使用wine安装sourceinsight

直接安装wine:
sudo apt-get install wine
下载sourceinsight安装文件,命令行中进入下载目录:
sudo wine sourceinsight.exe,或者手动安装好。

(sourceinsight下载地址:http://download.pchome.net/development/c/detail-712.html

序列号为:SI3US-205035-36448
SI3US-466908-65897 
SI3US-368932-59383
SI3US-065458-30661
SI3US-759512-70207)


配置wine:

大家用source insight看linux源码的时候都遇到这么一个麻烦,makefile和kconfig中的文字在搜索的时候不能找到,这是因为source insight默认是不选makefile的,也没有konfig这种类型的文件。下面就讲一下

Options -> Document Options-> 点击Document Type的下拉框,然后选择Make File,在右边的File Filter中,在原先的*.mak后面加上一个分号,即多个不同过滤规则以分号间隔开,再加上*makefile,变成 *.mak;*makefile,并且选中Include when adding to projects,这样,以后再新建工程的时候(当前工程同步下makefile就有了),就可以识别makefile或Makefile了(好像此处Source Insight并不区分大小写)。
如何添加kconfig:
由于kconfig是sourceinsight默认不支持的格式,所以我们现在先要加入一个类型。
点击 Add Type,填入新文件类型的名字kconfig,File Filter中写上*kconfig,最好再加上kconfig*(因为在linux中有些kconfig是以kconfig.*的形式出现),注意再选中下面的Include when adding to projects,这样就建立了一个新的文件类型, 以后新建工程加入文件时候,系统就能够识别kconfig的文件了。
用汇编定义了该函数的。去网上查了一下,发现原因是*.S文件并没有添加到改工程中来。 为了用source insight能搜索到.S的汇编文件,必须把该文件添加进来。 方法: 1、在创建工程前先特别设置好source insight 。设置如下: Options->Document Options->Doucment Types->选择x86 Assemble,再在右边File Filter里输入*.S。这样以后再new一个工程,在添加文件时,就可以把文件夹中的*.S添加进去了。 2、如果之前已经创建好工程的,而又想把*.S文件添加进来。如下: 打开创建好的工程,Options->Document Options->Doucment Types->选择x86 Assemble,再在右边File Filter里输入*.S。然后project-->add and remove project files,再重新把工程的所有文件夹添加一遍,这样就可以把*.S文件添加进来了(注:原来的*.c等文件不会被重复添加),然后重新rebuild就可以了。
还有,si默认的汇编文件后缀不支持.s的,所以要支持arm的汇编文件也需要改一下File filter.

到这里基本上是完成了,我是通过网上查资料和亲手实践的,可以完成!!关于对sourceinsight我是直接拷贝的,哈哈!!

原创粉丝点击