Short summary:

Packaging script looks in wrong path.

Detailed error summary:

To compile the kernel, I used the compilation instructions from here, which included the steps:

  1. Checkout git sources from:

    git clone git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/xenial -b hwe
  2. Modify the configs using:

    fakeroot debian/rules clean
    fakeroot debian/rules editconfigs

    where I changed only one option, the equivalent to CONFIG_DMA_CMA=y, listed under Device driversCMA. As it is suggested, I added a custom name for the new kernel by setting it in menuconfig, which ultimately results in CONFIG_LOCALVERSION="-cma" in the config file.

    I changed it for the x64 and x64lowlatency configs (I also tried to change it for i386 and armhf, also, but this made no difference).

  3. Build it with:

    CONCURRENCY_LEVEL=4 fakeroot debian/rules binary-headers binary-generic binary-perarch

The output of the error is:

...[a seemingly succesful compile and lots of INSTALL]...
# Build module blacklists:
#  - blacklist all watchdog drivers (LP:1432837)
...[more output]...
ls: cannot access '/home/user/kernel/xenial/debian/linux-modules-4.15.0-65-generic/lib/modules/4.15.0-65-generic/kernel/drivers/watchdog/': No such file or directory
# Remove all modules not in the inclusion list.
...[more output]...
depmod: ERROR: could not open directory /home/user/kernel/xenial/debian/linux-modules-4.15.0-65-generic/lib/modules/4.15.0-65-generic: No such file or directory
depmod: FATAL: could not search modules: No such file or directory
mv: cannot stat '/home/user/kernel/xenial/debian/linux-modules-4.15.0-65-generic/lib/modules/4.15.0-65-generic/kernel': No such file or directory
debian/rules.d/2-binary-arch.mk:89: recipe for target 'install-generic' failed
make: *** [install-generic] Error 1

The message from ls is indeed correct, as this claimed directory does not exist:


Only this directory with the -cma addition exists:


but it is not searched for.

I localized the output of blacklist all watchdog drivers to come from:


But I fail in identifying the parts in the Makefile, which path variable is wrong and how I would fix it. This surpasses my Linux knowledge.

Can anyone help me?


It seems I did partially solve the problem.

The instructions contain a note that I must have overlooked and that contradicts instructions that describe to do it otherwise:

NOTE: do not attempt to use CONFIG_LOCALVERSION as this will break the build.

Now at least the abovementioned problem is solved. However, the build is not yet successful and fails at a later stage. I will open another question how to continue with custom kernel creation without having to build/compile everything from scratch over and over again.

However, in this question the way following the instructions by the letter (edit the changelog file) did not work. I'm curious what I will find...

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.