`
kongweile
  • 浏览: 523299 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Linux内核源码包的安装及编译zz

阅读更多
Q:安装某些需要内核源码的软件时,为什么我已经将内核源码装在了/usr/src/linux下,仍然提示找不到内核源码?
A:因为这些软件configure会通过检测/usr/src/linux/include/linux/version.h是否存在,以判断是否以安装
内核源码,而如果只将内核源码包解压,并不存在version.h这个文件,所以需要做如下步骤:
在内核源码目录下(/usr/src/linux)
1)make include/linux/version.h 生成version.h文件
2)make include/asm 创建    如果从www.kernel.org下载的源码包,使用下列命令安装:
cd /usr/src   进入/usr/src目录中,将源码包放置在这里。
tar jxvf linux-2.6.9.tar.bz2 解压源码包,会生成linux-2.6.9目录
ln -s /usr/src/linux-2.6.9 /usr/src/linux 编译内核建议做个软链接。
并且要确保/lib/modules/2.6.9/下的build,source目录
正确指向/usr/src/linux-2.6.9的:
[root@NEWLFS modules]#ls -l /lib/modules/2.6.9
lrwxrwxrwx 1 root root    21 2005-02-08 20:28 build -> /usr/src/linux-2.6.9/
drwxr-xr-x 9 root root   216 2005-02-08 20:28 kernel/
-rw-r–r– 1 root root 3408 2005-02-09 13:26 modules.alias
-rw-r–r– 1 root root    69 2005-02-09 13:26 modules.ccwmap
-rw-r–r– 1 root root 7503 2005-02-09 13:26 modules.dep
-rw-r–r– 1 root root    73 2005-02-09 13:26 modules.ieee1394map
-rw-r–r– 1 root root   205 2005-02-09 13:26 modules.inputmap
-rw-r–r– 1 root root    81 2005-02-09 13:26 modules.isapnpmap
-rw-r–r– 1 root root 4649 2005-02-09 13:26 modules.pcimap
-rw-r–r– 1 root root 13519 2005-02-09 13:26 modules.symbols
-rw-r–r– 1 root root   189 2005-02-09 13:26 modules.usbmap
lrwxrwxrwx 1 root root    21 2005-02-08 20:28 source -> /usr/src/linux-2.6.9/

做完这些,我去安装NVIDIA驱动,结果编译时出错。
将内核源码编译一次,不安装,就可以正常编译了
2.4.x内核不知是否如此,如果编译NVIDIA过程中出现错误,就先编译一下内核
方法很简单:
从/boot目录下复制config-2.6.10到/usr/src/linux下
命名为.config
对于2.6.x内核使用下列命令编译:
cd /usr/src/linux 进入源码目录
make   编译内核及模块
注意:不要去make install 只要编译就可以了。
2.4.x使用下列命令编译内核,同样,只编译不安装。
cd /usr/src/linux
make dep 建立依赖关系(不知道是否有必要,做下没坏处)
    make bzImage 编译内核
   make modules 编译模块
通常发行版中/boot中应该有当前内核的配置文件,如上面的config-2.6.9
如果没有的话,可以通过下列命令创建出.config
    [root@NEWLFS linux]# cd /usr/src/linux
    [root@NEWLFS linux]#make menuconfig 字符界面配置内核
[root@NEWLFS linux]#make xconfig   图形界面配置内核
这两种方法任选其一,喜欢的话,可以自己配置一下。
或者直接使用默认值,保存退出即可。这样编译时间会长一些。
make menuconfig: 假如是在图形界面中的终端运行,要保证
该终端窗口为全屏,才不会出错。
编译完成后,就可以安装nvidia驱动了。
分享到:
评论

相关推荐

    Linux 中util-linux 工具包的源码

    它不仅提供了大量实用工具的实现,还是学习Linux内核和系统级编程的实践教材。深入研究这些源码,可以提升我们的技能,帮助我们解决复杂问题,并为Linux生态贡献自己的力量。无论是系统管理员、开发者,还是学习者,...

    tiny4412内核补丁dm9621

    在实际应用这个补丁时,开发者首先需要下载并解压文件,然后在tiny4412的Linux内核源码目录下进行操作。通常会涉及到以下步骤: 1. **获取内核源码**:下载对应版本的Linux内核源码,例如Linux 4.4。 2. **定位驱动...

    推荐一本Linux学习笔记

    #### 第一章 Linux简介及安装 **一、Linux介绍** - **Linux起源与定义**:Linux 是由芬兰大学生 Linus Torvalds 在 1991 年发起的一个开源项目。它是一种基于 Unix 的操作系统,以其高度稳定性和安全性而著称,...

    linux题库.pdf

    源代码安装一般包括解压源码包、配置、编译和安装四个步骤。 SET位权限(SUID和SGID)允许执行文件临时获得文件所有者的权限,如/bin/su允许用户切换用户身份。粘滞位常用于目录,防止非所有者删除或重命名目录中的...

    打造C程序员专用vim

    cscope 对于大型项目非常有用,尤其是像Linux内核这样的项目。以下是具体步骤: 1. **决定 cscope 数据库的存放位置**:一般将数据库文件存放在项目的根目录下。 2. **生成 cscope.files 文件**:这个文件包含了...

    2024嵌入式面试资料uboot基础

    1. **获取源码**:可以从官方网站或其他可靠的途径下载U-Boot的源码包。 2. **配置构建环境**:根据目标硬件平台的要求安装必要的工具链和依赖库。 3. **配置U-Boot**:使用`make menuconfig`命令进行配置,选择适合...

Global site tag (gtag.js) - Google Analytics