配置内核前的问题

编译打包和其他
回复
arss
帖子: 1
注册时间: 2010-02-28 22:45

配置内核前的问题

#1

帖子 arss » 2010-03-01 2:22

draapho前辈的<Linux 下使用 Intel WiFi Link 5100AGN  破解 WEP 密码>给了我极大的勇气,因为我就是说5100AGN内置网卡,之前对LINUX一无所知,既然命令和步骤都有了,以为照做就能成了.
在下载了UBUNTU后就是无尽的折磨,基本上每一步都必须GOOGLE很多资料才能进行.终于,离我的目标配置内核已经很近了,但是今晚的失败我是没有办法弄懂了.

5. 稍等片刻,全部下载安装完成后,开始更新网卡驱动,编译 Linux 内核。 
打开并解压缩下载的 linux‐2.6.27.7 的内核,把解压后的文件整个拷贝到  /usr/src 的目录
下。在这个目录下,还会有几个别的版本的内核文件在呢。 
打开这个新内核  /drivers/net/wireless/iwlwifi/, 用下载的支持注入的 iwl‐agn.c 和 iwl‐sta.c
以及 iwl‐tx.c三个文件覆盖掉原来的文件。 
6. sudo mv linux linux.bak,确保没有叫 linux 的这个链接(好像和快捷方式的概念差不多) 
sudo ln ‐s ./linux‐2.6.27.7 linux,把下载的新内核链接到 linux 
cd linux,进入 linux 这个目录 
7. 配置内核。配置内核是件困难的事情!参数繁多,一不小心就会导致升级失败。所以基
本思路是把当前内核配置文件拷贝过来一用。 
sudo cp /boot/config‐`uname ‐r` .config,复制当前的内核配置。 
sudo make  xconfig,当然如果想自己再看看配置,微调一下也可以。然后会弹出一个配
置内核的窗口,对配置内核感兴趣的 google,我基本没改。

就是在做sudo make xconfig指令的时候,出现了两次错误,第一次错误时,我想着可能步骤没有做对,又从头到尾做了第二次,结果错误如下:

root@ubuntu:/usr/src/linux# sudo cp /boot/config-2.6.27-7-generic .config
root@ubuntu:/usr/src/linux# sudo make xconfig
HOSTCC scripts/basic/fixdep
HOSTCC scripts/basic/docproc
CHECK qt
*
* Unable to find the QT3 installation. Please make sure that
* the QT3 development package is correctly installed and
* either install pkg-config or set the QTDIR environment
* variable to the correct location.
*
HOSTCC scripts/kconfig/conf.o
scripts/kconfig/conf.c: 在函数‘conf_askvalue’中:
scripts/kconfig/conf.c:104: 警告: 忽略声明有 warn_unused_result 属性的‘fgets’的返回值
scripts/kconfig/conf.c: 在函数‘conf_choice’中:
scripts/kconfig/conf.c:306: 警告: 忽略声明有 warn_unused_result 属性的‘fgets’的返回值
sed < scripts/kconfig/lkc_proto.h > scripts/kconfig/lkc_defs.h 's/P(\([^,]*\),.*/#define \1 (\*\1_p)/'
HOSTCC scripts/kconfig/kconfig_load.o
HOSTCC scripts/kconfig/kxgettext.o
SHIPPED scripts/kconfig/zconf.tab.c
SHIPPED scripts/kconfig/lex.zconf.c
SHIPPED scripts/kconfig/zconf.hash.c
HOSTCC scripts/kconfig/zconf.tab.o
In file included from scripts/kconfig/zconf.tab.c:2486:
scripts/kconfig/confdata.c: 在函数‘conf_write’中:
scripts/kconfig/confdata.c:501: 警告: 忽略声明有 warn_unused_result 属性的‘fwrite’的返回值
scripts/kconfig/confdata.c: 在函数‘conf_write_autoconf’中:
scripts/kconfig/confdata.c:739: 警告: 忽略声明有 warn_unused_result 属性的‘fwrite’的返回值
scripts/kconfig/confdata.c:740: 警告: 忽略声明有 warn_unused_result 属性的‘fwrite’的返回值
In file included from scripts/kconfig/zconf.tab.c:2487:
scripts/kconfig/expr.c: 在函数‘expr_print_file_helper’中:
scripts/kconfig/expr.c:1090: 警告: 忽略声明有 warn_unused_result 属性的‘fwrite’的返回值
make[1]: *** 没有规则可以创建“scripts/kconfig/qconf.o”需要的目标“scripts/kconfig/.tmp_qtcheck”。 停止。
make: *** [xconfig] 错误 2

完全不懂上面的错误是说什么,也完全不明白该怎么去解决.所以之后贴上来麻烦各位前辈和高手了.过了这一步,我就要开始编译了啊.

顺便把后面的步骤也贴一下:
8. 弄了份现成的配置文件,下一步就是编译了。为以后升级方便,先打包成 deb 包。 
cd /usr/src/linux 
sudo ‐s –H 
make‐kpkg clean 
sudo make‐kpkg ‐‐initrd –revision=diy1  kernel_image kernel_headers 
最后行输入完毕后,编译需要一个多小时,在确认开始编译后,该干吗干吗去! 
9. 安装新的内核。 在你的耐心差不多消磨至尽的时候, 破解的准备工作也到了最后一步了。  
sudo dpkg ‐i /usr/src/kernel‐image‐2.6.27.7*.deb,安装内核包 
sudo dpkg ‐i /usr/src/kernel‐headers‐2.6.27.7*.deb,安装内核 headers包 
也非常有必要到/usr/src 中把这两个 deb 文件给拷贝出来, 下次重装 Linux 升级可就不用
这么麻烦了。 
sudo dpkg -i <name of the file&gt,设置 grub 默认引导
现在重启一下,如果顺利,会自动进入 2.6.27.7 的新内核。

问题该如何解决呢?希望前辈们和高手可以帮帮我,谢谢!
回复