LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: qiang_liu8183

arch也弃用kernel-headers了,默认linux-api-headers了~~~

[复制链接]
发表于 2010-1-29 12:21:13 | 显示全部楼层
Post by axlrose;2065877
kernel26 kernel26-headers 分出来是好事,不做模块编译的话一般用不着后者
kernel-headers 跟kernel26-headers 是不同的,前者是为了用户态编译,像GCC这种玩意弄的,提个一个兼容的内核头文件,后者就是kernel26对应的内核头文件

还是装上好.装驱动的时候有用.
回复 支持 反对

使用道具 举报

发表于 2010-1-29 14:23:12 | 显示全部楼层
相对于传统方式的改变:
1、kernel26 分开为 kernel26 + kernel26-headers
2、kernel-headers 改名为 linux-api-headers
回复 支持 反对

使用道具 举报

发表于 2010-1-29 14:47:40 | 显示全部楼层
arch ----- ubuntu

kernel26 ---- linux-image-2.6
kernel26-headers ---- linux-headers-2.6

kernel-headers --> linux-api-headers ---- linux-kernel-headers --> linux-libc-dev
回复 支持 反对

使用道具 举报

发表于 2010-1-29 17:33:06 | 显示全部楼层
kernel-headers 现在的 linux-api-headers 供应用程序直接或通过 libc (主要)使用。安装路径为 /usr/include 。该包不能随便升级,每次升级都要重新编译 libc 。

kernel26-headers 为设备驱动等直接和内核交互而不通过 libc 的程序使用。安装路径为 /usr/src 。该包随内核升级,每次升级要编译驱动内核模块。
回复 支持 反对

使用道具 举报

发表于 2010-1-31 11:07:15 | 显示全部楼层
楼上的解释不错。

我是否可以这么理解,kernel-headers和kernel26-headers这两个包本质上是相同的,都是linux-2.6.xxx 源码包里面的头文件。只是这2个包支持的对象不同。前者提供的是api支持,即libc这样的用户态软件跟内核的接口。后者提供的是内核模块于内核的接口。前者变动不频繁,但一但有变动即意味着内核api或abi发生了变动,需要升级libc,否则将出错误?后者于内核有直接的对应关系,主要内核升级了,kernel26-headers就要升级,且第三方驱动程序都要根据新的头文件重新编译?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表