0

我正在为android emulator编译linux source code。我做了所有的先决条件。我提取从android emulator(1.5).config文件用下面的命令在编译android源代码时出现“缺少内核.config文件”错误

$adb pull /proc/config.gz . # get compressed .config file from the emulator. 

$gunzip config.gz # uncompress it. 
$cp config .config # rename it into .config 

而现在的配置文件是在我的/ Android的SDK-linux_x86/tools目录。我根据自己的需要修改了它。现在,当我尝试制作(用于构建和交叉编译linux源代码)时,出现以下错误。

[email protected]:~# cd common 
[email protected]:~/common# ARCH=arm CROSS_COMPILE=/home/preetam/mydroid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi- make 
    HOSTCC scripts/basic/fixdep 
scripts/basic/fixdep.c: In function ‘traps’: 
scripts/basic/fixdep.c:377: warning: dereferencing type-punned pointer will break strict-aliasing rules 
scripts/basic/fixdep.c:379: warning: dereferencing type-punned pointer will break strict-aliasing rules 
    HOSTCC scripts/basic/docproc 
    HOSTCC scripts/basic/hash 
    HOSTCC scripts/kconfig/conf.o 
scripts/kconfig/conf.c: In function ‘conf_askvalue’: 
scripts/kconfig/conf.c:105: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result 
scripts/kconfig/conf.c: In function ‘conf_choice’: 
scripts/kconfig/conf.c:307: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result 
    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 
    HOSTLD scripts/kconfig/conf 
scripts/kconfig/conf -s arch/arm/Kconfig 
*** 
*** You have not yet configured your kernel! 
*** (missing kernel .config file) 
*** 
*** Please run some configurator (e.g. "make oldconfig" or 
*** "make menuconfig" or "make xconfig"). 
*** 
make[2]: *** [silentoldconfig] Error 1 
make[1]: *** [silentoldconfig] Error 2 
    CHK  include/linux/version.h 
    UPD  include/linux/version.h 
    Generating include/asm-arm/mach-types.h 
make: *** No rule to make target `include/config/auto.conf', needed by `include/config/kernel.release'. Stop. 
[email protected]:~/common# 

我下面从http://linuxclues.blogspot.com/2010/05/build-compile-linux-kernel-android.html

这里"common"目录说明就是我的Android内核源所在。错误是关于.config文件。我应该在哪里放置.config文件?或者如何解决这个问题?

请大家帮忙。谢谢!

回答

1

我想你可以明确地从“make menuconfig”加载配置文件。这可能是一个好主意,因为您的新内核可能会期望在当前“.config”中不可用的选项。如果你这样做,“menuconfig”将使用你的旧“.config”作为模板。

+0

感谢您的回答。但我复制修改后的.config文件在/ common目录中,它工作! – Preetam 2011-03-19 09:23:15

+0

这已解决。谢谢 。 – Preetam 2011-04-02 09:45:09

0

如果.config存在,那么你将删除文件include/config/auto.conf