简体   繁体   English

生成Linux内核.config文件使源文件夹不干净

[英]Generating the Linux kernel .config file is making the source folder unclean

I am currently trying to rebuild a linux kernel, and I'm experimenting some difficulties. 我目前正在尝试重建Linux内核,并且正在尝试一些困难。

I have modified the .config using make menuconfig. 我已经使用make menuconfig修改了.config。

...
make[1]: Entering directory '/home/doe/build/linux'
  CHK     include/config/kernel.release
  GEN     ./Makefile
  CHK     include/generated/uapi/linux/version.h
  CHK     include/generated/utsrelease.h
  Using /home/doe/workspace/linux as source for kernel
  /home/doe/workspace/linux is not clean, please run 'make mrproper'
  in the '/home/doe/workspace/linux' directory.
/home/doe/workspace/linux/Makefile:1027: recipe for target 'prepare3' failed
make[1]: *** [prepare3] Error 1
...

Then I tried to run make mrproper. 然后,我尝试运行make mrproper。 It works well and deletes my .config file from my build folder. 它运作良好,并从我的构建文件夹中删除了我的.config文件。 Without surprise I cannot build because a .config file is missing. 毫不奇怪,我无法构建,因为缺少.config文件。

I did a make defconfig followed by a make -j 8, just to try to build with some basic config file. 我做了一个make defconfig,然后是make -j 8,只是为了尝试使用一些基本的配置文件来构建。

  ...
  HOSTCC  scripts/mod/file2alias.o
  HOSTLD  scripts/mod/modpost
  HOSTCC  arch/x86/tools/relocs_32.o
  HOSTCC  arch/x86/tools/relocs_64.o
  HOSTCC  arch/x86/tools/relocs_common.o
  Using /home/doe/workspace/linux as source for kernel
  /home/doe/workspace/linux is not clean, please run 'make mrproper'
  in the '/home/doe/workspace/linux' directory.
/home/doe/workspace/linux/Makefile:1027: recipe for target 'prepare3' failed
make[1]: *** [prepare3] Error 1
make[1]: *** Waiting for unfinished jobs....
  HOSTLD  arch/x86/tools/relocs
make[1]: *** wait: No child processes.  Stop.
Makefile:152: recipe for target 'sub-make' failed
make: *** [sub-make] Error 2

How am I supposed to build if generating a .config makes the source folder unclean ? 如果生成.config会使源文件夹不干净,我应该如何构建?

You should check whether the " include/config " directory exists in your kernel source. 您应该检查内核源中是否存在“ include/config ”目录。

The prepare3 target checks the ' .config ' file and the ' include/config ' directory. prepare3目标检查“ .config ”文件和“ include/config ”目录。 You could find this by searching " prepare3 " in the Makefile 您可以通过在Makefile中搜索“ prepare3 ”来找到它

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM