No rule to make target `include/config/auto.conf', needed by `include/ config/kernel.release'. stop

来源:互联网 发布:plc和单片机有什么区别 编辑:程序博客网 时间:2024/05/23 01:56

硬件平台:飞凌 imx6Q 四核

系统版本:Linux 3.0.35

开发平台:ubuntu 12.04


虽然开发板出厂已经给了定制的内核镜像,但是嵌入式产品总是要定制适合自己的内核版本。所有编译内核是必须要完成的一步。

一、配置内核

#tar zxvf linux-3.0.35.tar.gz       
#cd linux-3.0.35
#export ARCH=arm
#export CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/arm-none-linux-gnueabi-#exportPATH=/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin:$PATH
#make distclean
#cp arch/arm/configs/imx6_defconfig .config
完成以上的步骤已经完成内核的配置了,上面的步骤也没有什么问题出现

二、编译内核

#make uImage

然后就出现如下问题了

make[2]: *** [silentoldconfig] Error 1  make[1]: *** [silentoldconfig] Error 2  make: *** No rule to make target `include/config/auto.conf', needed by `include/ config/kernel.release'.  Stop.
然后执行
sudo make uImage     错误依然存在


解决办法:

将每个文件的所有者/组更改为imx6(自己的用户名),-R将此更改应用于子目录。

输入以下命令:

#sudo chown -R imx6:imx6 .

然后就可以看到内核顺利的编译了。

 但是最后发现内核镜像是编译出来了,但是还有一些小错误。


解决办法:

输入一下命令:

#sudo apt-get install uboot mkimage

我使用的是12.04的ubuntu,如果使用unbuntu 9.10以上的版本,可以安装mkimage包来解决这个问题。

然后直接make uImage 就行了




 
阅读全文
0 0