Bug ID 1123348
Summary Error in make kernel or its documentation. Missing targets.
Classification openSUSE
Product openSUSE Distribution
Version Leap 15.0
Hardware Other
OS Other
Status NEW
Severity Normal
Priority P5 - None
Component Kernel
Assignee kernel-maintainers@forge.provo.novell.com
Reporter carlos.e.r@opensuse.org
QA Contact qa-bugs@suse.de
Found By ---
Blocker ---

I tried this, which had been working for a decade at least and is documented:

Telcontar:~ # cd /usr/src/linux
Telcontar:/usr/src/linux # make cloneconfig
make[1]: *** No rule to make target 'cloneconfig'.  Stop.
make: *** [Makefile:569: cloneconfig] Error 2
Telcontar:/usr/src/linux # 


The documentation still says to use it:

/usr/share/doc/packages/kernel-source-4.12.14-lp150.12.45/README.SUSE:

�In addition, the running kernel exposes a gzip compressed version of its
configuration file as /proc/config.gz. The kernel sources can be
configured based on /proc/config.gz with ``make cloneconfig''.�


The alternative seems to be:

# cd /usr/src/linux/
# zcat /proc/config.gz > .config
# make silentoldconfig


Then I do:

Telcontar:/usr/src/linux # echo -e "\n-- scripts --" && make scripts && echo -e
"\n-- prepare --" && make prepare && echo -e "\n-- Done good! --"

which fails with:

scripts/mod/modpost.c:26:10: fatal error:
../../include/generated/uapi/linux/suse_version.h: No such file or directory
 #include "../../include/generated/uapi/linux/suse_version.h"
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.


Apparently, the order has to be reversed, firs prepare, then scripts; but the
official documentation has not changed; at "/usr/src/linux/README.SUSE", it
says:

The first method involves the following steps:

  (1)  Install the kernel-source package.

  (2)  Configure the kernel, see HOW TO CONFIGURE THE KERNEL SOURCES.

  (3)  Create files required for compiling external modules:
       ``make scripts'' and ``make prepare''.  <========================

  (4)  Compile the module(s) by changing into the module source directory
       and typing ``make -C $(your_build_dir) M=$(pwd)''.

  (5)  Install the module(s) by typing
       ``make -C $(your_build_dir) M=$(pwd) modules_install''.


You are receiving this mail because: