I am currently trying to compile the headers in Jammy Jellyfish, and I am running into the following error:

/usr/src/linux-headers-5.15.0-25-generic$ sudo make
  SYNC    include/config/auto.conf.cmd
make[1]: *** No rule to make target 'arch/x86/entry/syscalls/syscall_32.tbl', needed by 'arch/x86/include/generated/uapi/asm/unistd_32.h'.  Stop.
make: *** [arch/x86/Makefile:213: archheaders] Error 2

Before running the make command, I copied the old .config file /boot/config-5.15.0-25-generic into the .config file in /usr/src/linux-headers-5.15.0-25-generic/

I've seen a few posts where this error has been posted, but I have not seen any answers that fix the issue. If there is more information needed, please let me know.


  • I also have the same issue after upgrading from Ubuntu 20.04 to 22.04. I initially had errors for missing flex and bison. After manually installing those, I've run into this dead end. Lots of people having the same problem online, but no answers. This Korean page seems to have an answer, but I don't understand it: bigbigpark.github.io/error/linux_kernal Commented Sep 3, 2022 at 15:00
  • Running into the same issue compiling 5.15.64. make[1]: *** [kernel/Makefile:160: kernel/kheaders_data.tar.xz] Error 127 make: *** [Makefile:1896: kernel] Error 2.
    – Rattle
    Commented Sep 4, 2022 at 11:45

1 Answer 1


I was able to form up a solution posted here https://stackoverflow.com/questions/39107811/no-rule-to-make-target-arch-x86-entry-syscalls-syscall-32-tbl-needed-by-arch

I tried to build a HP PC kernel module for the Linux Mint Vanessa. First thing - remove all spaces from the folder path you're building in (if there are any). I tried to build it also on my debian machine for the test. Here are my builds, hope it provides a solution. Edit your project Makefile.

Debian/Mint: original

# Makefile for hpuefi loadable kernel module
KVERS:=$(shell uname -r)


        $(MAKE) -C $(KSRC) SUBDIRS=$(PWD) modules
        $(RM) .*.cmd *.mod.c *.o *.ko *.order *.symvers -r .tmp*
        install -D -m 0644 $(TARGET).ko $(DESTDIR)$(KDIR)/$(TARGET).ko

Debian before

user@machine:/media/user/usbdisk/SP58029/hpuefi-mod-1.0.3-deb$ make
make -C /lib/modules/5.10.0-19-amd64/build SUBDIRS=/media/user/usbdisk/SP58029/hpuefi-mod-1.0.3-deb modules
make[1]: Entering directory '/usr/src/linux-headers-5.10.0-19-amd64'
/usr/src/linux-headers-5.10.0-19-common/Makefile:225: =============== ERROR ==============
/usr/src/linux-headers-5.10.0-19-common/Makefile:226: 'SUBDIRS' was removed in Linux 5.3
/usr/src/linux-headers-5.10.0-19-common/Makefile:227: Use 'M=' or 'KBUILD_EXTMOD=' instead
/usr/src/linux-headers-5.10.0-19-common/Makefile:228: ====================================
/usr/src/linux-headers-5.10.0-19-common/Makefile:229: *** ..  Stop.
make[1]: *** [/usr/src/linux-headers-5.10.0-19-common/Makefile:185: __sub-make] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.10.0-19-amd64'
make: *** [Makefile:13: default] Error 2

Debian fix

        $(MAKE) -C $(KSRC) M=$(PWD) modules

Linux Mint before

mint@mint:/media/mint/DAC4798DC4796D1F/swsetup/SP58029/HP_Utilities_for_Linux/hpuefi-mod-1.0.3$ sudo make
make -C /lib/modules/5.15.0-41-generic/build M= modules
make[1]: Entering directory '/usr/src/linux-headers-5.15.0-41-generic'
make[2]: *** No rule to make target 'arch/x86/entry/syscalls/syscall_32.tbl', needed by 'arch/x86/include/generated/uapi/asm/unistd_32.h'.  Stop.
make[1]: *** [arch/x86/Makefile:213: archheaders] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.15.0-41-generic'
make: *** [Makefile:13: default] Error 2

Linux Mint fix:

        $(MAKE) -C $(KSRC) M=$(shell pwd) modules

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .