Linux Redhat AS 4中编译内核与以往版本的区别 (转)
Linux Redhat AS 4中编译内核与以往版本的区别
曾经被问及为何在Redhat AS4中找不到内核源代码目录,开始时回答对方在安装时漏选了源码包,对方回答我已经重装过四遍,一个包一个包找过来眼都对起来了也没找到。真见鬼,我在电话里说要不你先到/usr/src目录下找找看,试着做做。
后来他发了一个邮件给我,包含如下错误:
# make mrproper
scripts/Makefile.clean:10: Documentation/DocBook/Makefile: No such file or directory
make[1]: *** No rule to make target `Documentation/DocBook/Makefile'. Stop.
make: *** [_mrproper_Documentation/DocBook] Error 2
于是研究了一下AS4,才发现自己很落伍,传统的编译步骤有所变化。
在Linux AS 4的发行注记中找到解释:
当内核源码已经存在在内核的 .src.rpm 文件中时,为内核源码提供一个独立的软件包就变得没有必要。因此,红帽企业 Linux 4 不再包括 kernel-source 软件包。需要这些内核源码的用户可以在 kernel .src.rpm 文件中找到。通过这个文件建立一个快速扩展的资源树…
这就是说当红帽企业认为为内核源码提供一个独立的软件包不再重要时,作为用户的我们如果想定制、升级、重编内核就得折腾一下了。/usr/src/kernels 目录不是源代码目录,rpm源代码包也不在AS 4的七张安装光盘中(至少我没能找到)。
1. 获得 kernel.src.rpm 包
通过uname命令确定自己需要的rpm的源代码包为
kernel-2.6.9-22.EL.src.rpm
没有许可证,所以无法直接用up2date下载。网上找了半天,下载地址为:http://ftp.redhat.com/pub/redhat/linux/updates/enterprise/4AS/en/os/SRPMS/
(Redhat相关下载的东西一向比较杂乱,如果当你看到此文时无法通过以上地址下载,请您继续折腾着寻找)
2. 生成kernel源代码安装包
# rpm -ivh kernel-2.6.9-22.EL.src.rpm
源码被解压至 /usr/src/redhat/SOURCES 目录,并且在 /usr/src/redhat/SPECS 目录中建立 kernel-2.6.spec 文件。
# cd /usr/src/redhat/SPECS/
# vi kernel-2.6.spec
%define buildup 1
%define buildsmp 1
%define buildsource 1
%define buildhugemem 1
将buildsource的值从0改为1
# rpmbuild -ba --target=x86_64 ./kernel-2.6.spec
如果遇到类似以下的错误:
make[1]: *** [nonint_oldconfig] Error 7
make: *** [nonint_oldconfig] Error 2
error: Bad e
相关文档:
1. HCI层协议概述:
HCI提供一套统一的方法来访问Bluetooth底层。如图所示:
从图上可以看出,Host Controller Interface(HCI) 就是用来沟通Host和Module。Host通常就是PC, Module则是以各种物理连接形式(USB,serial,pc-card等)连接到PC上的bluetooth Dongle。
在Host这一端:application,SDP,L2cap等协议 ......
本文转载于: http://hi.baidu.com/peruke/blog/item/b8de06ec6a04583b27979132.html
tzset
#incude <time.h
>
void tzset(void);
设置时间环境变量。
说明
tzset()函数使用环境变量TZ的当前设置把值赋给三个全局变量:daylight,timezone和tzname。
这些变量由ftime和localtime函数使用校正格林威治(UTC ......
一、概述
谈到在linux系统下编写I2C驱动,目前主要有两种方式,一种是把I2C设备当作一个普通的字符设备来处理,另一种是利用linux I2C驱动体系结构来完成。下面比较下这两种驱动。
第一种方法的好处(对应第二种方法的劣势)有:
● 思路比较直接,不需要 ......
asctime(将时间和日期以字符串格式表示)
相关函数
time,ctime,gmtime,localtime
表头文件
#include<time.h>
定义函数
char * asctime(const struct tm * timeptr);
函数说明
asctime()将参数timeptr所指的tm结构中的信息转换成真实世界所使用的时间日 ......
linux目录架构
/ 根目录
/bin 常用的命令 binary file 的目錄
/boot 存放系统启动时必须读取的档案,包括核心 (kernel) 在内
/boot/grub/menu.lst GRUB设置
/boot/vmlinuz 内核
&nbs ......