kernel build error during ubuntu linux kernel build
ckim at etri.re.kr
ckim at etri.re.kr
Tue Jun 29 00:07:20 EDT 2021
I found from https://wiki.ubuntu.com/Kernel/BuildYourOwnKernel, the correct
method to build ubuntu is (for ARCH=arm64 case)
* LANG=C fakeroot debian/rules ARCH=arm64 clean
* # quicker build:
* LANG=C fakeroot debian/rules ARCH=arm64 binary-headers
binary-generic binary-perarch
* # if you need linux-tools or lowlatency kernel, run instead:
* LANG=C fakeroot debian/rules ARCH=arm64 binary
But when I tried it, it went far longer but eventually it failed with error.
..
Creating symlink
/home/ckim/prj1/QEMU/qemu_test/test_ubuntu-20.04-build/focal/ubuntu-focal/de
bian/build/builddkms/build/zfs/0.8.3/source ->
/home/ckim/prj1/QEMU/qemu_test/test_ubuntu-20.04-build/focal/ubuntu-focal/de
bian/build/builddkms/source/zfs-0.8.3
DKMS: add completed.
Running the pre_build script:
checking for gawk... gawk
checking metadata... META file
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether make supports nested variables... yes
checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
...
checking kernel source version... 5.4.0-42-generic
checking kernel file name for module symbols... Module.symvers
checking whether modules can be built... no
configure: error:
*** Unable to build an empty module.
Building module:
cleaning build area...(bad exit status: 2)
make -j28 KERNELRELEASE=5.4.0-42-generic...(bad exit status: 2)
ERROR (dkms apport): binary package for zfs: 0.8.3 not found
Error! Bad return status for module build on kernel: 5.4.0-42-generic
(x86_64)
Consult
/home/ckim/prj1/QEMU/qemu_test/test_ubuntu-20.04-build/focal/ubuntu-focal/de
bian/build/builddkms/build/zfs/0.8.3/build/make.log for more information.
DKMS make.log for zfs-0.8.3 for kernel 5.4.0-42-generic (x86_64)
Tue Jun 29 11:43:02 KST 2021
make[1]: Entering directory '<<DKMSDIR>>/build/zfs/0.8.3/build'
make[1]: *** No targets specified and no makefile found. Stop.
make[1]: Leaving directory '<<DKMSDIR>>/build/zfs/0.8.3/build'
make: *** [debian/rules.d/2-binary-arch.mk:223: install-generic] Error 1
And according to the guide, I'm supposed to see in ../ directory two linux
headers .deb files and a linux-image .deb file but I see only
linux-headers-5.4.0-42_5.4.0-42.46_all.deb
Can anyone give me an advice? Any suggestion will be appreciated.
Thank you!
Chan Kim
From: ckim at etri.re.kr <ckim at etri.re.kr>
Sent: Tuesday, June 29, 2021 10:04 AM
To: kernelnewbies at kernelnewbies.org
Subject: kernel build error during ubuntu linux kernel build
Hello, all
I have a strange problem in building the linux kernel from ubuntu. (I want
to replace the kernel in ubuntu to debug install failure on qemu virtual
machine)
I downloaded ubuntu source by "git clone
git://kernel.ubuntu.com/ubuntu/ubuntu-focal.git". and because I wanted to
use a specific version, I did "git checkout Ubuntu-5.4.0-42.46" (this
version is the one used in a ubuntu installation .iso.
And you can see related askubuntu question here :
https://askubuntu.com/questions/1347390/what-ubuntu-source-version-should-i-
use-to-add-some-debug-prints-for-ubuntu-bo )
After git-checkout, the `git log` shows this result :
commit 98c4545e2d65ed35c31056f72c4da20f6b5ea0d0 (HEAD, tag:
Ubuntu-5.4.0-42.46)
Author: Khalid Elmously <khalid.elmously at canonical.com
<mailto:khalid.elmously at canonical.com> >
Date: Thu Jul 9 19:50:26 2020 -0400
UBUNTU: Ubuntu-5.4.0-42.46
Signed-off-by: Khalid Elmously <khalid.elmously at canonical.com
<mailto:khalid.elmously at canonical.com> >
To build the kernel, I did `ARCH=arm64 CROSS_COMPILE=aarch64-none-elf- make
defconfig` and `ARCH=arm64 CROSS_COMPILE=aarch64-none-elf- make -j24 Image`.
But this gives me a compile error below. What can be wrong?
.
.
CC mm/interval_tree.o
CC drivers/base/regmap/regcache.o
CC kernel/time/posix-cpu-timers.o
CC mm/list_lru.o
CC block/blk-mq.o
AS arch/arm64/lib/memchr.o
CC fs/ext4/migrate.o
security/security.c: In function 'security_add_hooks':
security/security.c:477:25: error: 'struct security_hook_heads' has no
member named 'socket_getpeersec_stream'
477 | &security_hook_heads.socket_getpeersec_stream)
| ^
CC kernel/time/posix-clock.o
AS arch/arm64/lib/memcmp.o
security/security.c: In function 'security_setprocattr':
CC arch/arm64/kvm/../../../virt/kvm/arm/vgic/vgic-v2.o
security/security.c:2058:27: error: 'union security_list_options' has no
member named 'socket_getpeersec_stream'
2058 | socket_getpeersec_stream.socket_getpeersec_stream = NULL;
| ^
In file included from ./include/linux/timer.h:5,
from ./include/linux/workqueue.h:9,
from ./include/linux/bpf.h:9,
from security/security.c:13:
security/security.c:2060:25: error: 'struct security_hook_heads' has no
member named 'socket_getpeersec_stream'
2060 | &security_hook_heads.socket_getpeersec_stream,
| ^
./include/linux/list.h:857:12: note: in definition of macro
'hlist_entry_safe'
857 | ({ typeof(ptr) ____ptr = (ptr); \
| ^~~
security/security.c:2059:3: note: in expansion of macro
'hlist_for_each_entry'
2059 | hlist_for_each_entry(hp,
| ^~~~~~~~~~~~~~~~~~~~
security/security.c:2060:25: error: 'struct security_hook_heads' has no
member named 'socket_getpeersec_stream'
2060 | &security_hook_heads.socket_getpeersec_stream,
| ^
./include/linux/list.h:857:28: note: in definition of macro
'hlist_entry_safe'
857 | ({ typeof(ptr) ____ptr = (ptr); \
| ^~~
security/security.c:2059:3: note: in expansion of macro
'hlist_for_each_entry'
2059 | hlist_for_each_entry(hp,
| ^~~~~~~~~~~~~~~~~~~~
In file included from ./include/linux/list.h:9,
from ./include/linux/timer.h:5,
from ./include/linux/workqueue.h:9,
from ./include/linux/bpf.h:9,
from security/security.c:13:
./include/linux/kernel.h:993:17: warning: cast to pointer from integer
of different size [-Wint-to-pointer-cast]
993 | void *__mptr = (void *)(ptr); \
| ^
./include/linux/list.h:847:40: note: in expansion of macro
'container_of'
847 | #define hlist_entry(ptr, type, member)
container_of(ptr,type,member)
| ^~~~~~~~~~~~
.
.
BTW, when I do the same with linux-5.4.21 vanila source, it compiles ok.
Can anyone give me an advice? Could this Ubuntu-5.4.0-42.46 version have a
bug and maybe I need a patch?
Thank you!
Chan Kim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20210629/516fe55c/attachment-0001.html>
More information about the Kernelnewbies
mailing list