Hi, On 10/09/2018 08:33, Tobin C. Harding wrote:
Hi,
I'm unable to build the kernel using the O=path/to/out option. Am I doing something brain dead?
$ cd $KERNEL $ make mrproper $ cp path/to/valid/config/file .config
Here you are copying a file in the source directory...
$ make O=/abs/path/to/output ... scripts/kconfig/conf --syncconfig Kconfig *** *** Configuration file ".config" not found! *** *** Please run some configurator (e.g. "make oldconfig" or *** "make menuconfig" or "make xconfig"). ...
So I tried copying the .config file to the output directory
$ cp .config /abs/path/to/output $ make O=/abs/path/to/output ... Using /home/tobin/build/kernel/linux as source for kernel /home/tobin/build/kernel/linux is not clean, please run 'make mrproper' in the '/home/tobin/build/kernel/linux' directory.
...and here's where the kernel complains about it. You have to put your .config file in the out-of-tree build dir, not the source dir. BTW this also allows you to have multiple builds woth different configs in different directories, all from the same set of sources -- how would it be possible if the config were in the source dir? So, fix it as: cd $KERNEL make mrproper make O=/abs/path/to/output # BTW: can be also relative cd /abs/path/to/output cp path/to/valid/config/file .config make olddefconfig # might be not needed, but harmless anyway make -- Luca