View previous topic :: View next topic |
Author |
Message |
ipic Guru
Joined: 29 Dec 2003 Posts: 431 Location: UK
|
Posted: Mon Jan 20, 2025 5:23 pm Post subject: [SOLVED] gentoo-sources-6.13.0: make error |
|
|
I'm seeing this when I run make on gentoo-sources-6.13.0:
Code: | /usr/src/linux # make
CALL scripts/checksyscalls.sh
DESCEND objtool
INSTALL libsubcmd_headers
UPD include/generated/utsversion.h
CC init/version-timestamp.o
KSYMS .tmp_vmlinux0.kallsyms.S
AS .tmp_vmlinux0.kallsyms.o
LD .tmp_vmlinux1
ld: drivers/gpu/drm/drm_fbdev_shmem.o: in function `drm_fbdev_shmem_driver_fbdev_probe':
/usr/src/linux-6.13.0-gentoo/drivers/gpu/drm/drm_fbdev_shmem.c:171:(.text+0x178): undefined reference to `drm_fb_helper_alloc_info'
ld: /usr/src/linux-6.13.0-gentoo/drivers/gpu/drm/drm_fbdev_shmem.c:177:(.text+0x195): undefined reference to `drm_fb_helper_fill_info'
ld: /usr/src/linux-6.13.0-gentoo/drivers/gpu/drm/drm_fbdev_shmem.c:192:(.text+0x20e): undefined reference to `drm_fb_helper_deferred_io'
ld: /usr/src/linux-6.13.0-gentoo/drivers/gpu/drm/drm_fbdev_shmem.c:202:(.text+0x24d): undefined reference to `drm_fb_helper_release_info'
ld: drivers/gpu/drm/drm_fbdev_shmem.o: in function `drm_fbdev_shmem_get_page':
/usr/src/linux-6.13.0-gentoo/drivers/gpu/drm/drm_fbdev_shmem.c:86:(.text+0x2e6): undefined reference to `drm_gem_fb_get_obj'
ld: drivers/gpu/drm/drm_fbdev_shmem.o: in function `drm_fbdev_shmem_fb_destroy':
/usr/src/linux-6.13.0-gentoo/drivers/gpu/drm/drm_fbdev_shmem.c:62:(.text+0x3e8): undefined reference to `drm_fb_helper_fini'
ld: /usr/src/linux-6.13.0-gentoo/drivers/gpu/drm/drm_fbdev_shmem.c:67:(.text+0x40a): undefined reference to `drm_fb_helper_unprepare'
ld: drivers/gpu/drm/drm_fbdev_shmem.o: in function `drm_fbdev_shmem_fb_mmap':
/usr/src/linux-6.13.0-gentoo/drivers/gpu/drm/drm_fbdev_shmem.c:45:(.text+0x446): undefined reference to `drm_gem_fb_get_obj'
ld: drivers/gpu/drm/drm_fbdev_shmem.o: in function `drm_fbdev_shmem_defio_write':
/usr/src/linux-6.13.0-gentoo/drivers/gpu/drm/drm_fbdev_shmem.c:37:(.text+0x575): undefined reference to `drm_fb_helper_damage_range'
ld: drivers/gpu/drm/drm_fbdev_shmem.o: in function `drm_fbdev_shmem_defio_imageblit':
/usr/src/linux-6.13.0-gentoo/drivers/gpu/drm/drm_fbdev_shmem.c:37:(.text+0x4af): undefined reference to `drm_fb_helper_damage_area'
ld: drivers/gpu/drm/drm_fbdev_shmem.o: in function `drm_fbdev_shmem_defio_copyarea':
/usr/src/linux-6.13.0-gentoo/drivers/gpu/drm/drm_fbdev_shmem.c:37:(.text+0x4ef): undefined reference to `drm_fb_helper_damage_area'
ld: drivers/gpu/drm/drm_fbdev_shmem.o: in function `drm_fbdev_shmem_defio_fillrect':
/usr/src/linux-6.13.0-gentoo/drivers/gpu/drm/drm_fbdev_shmem.c:37:(.text+0x52f): undefined reference to `drm_fb_helper_damage_area'
ld: drivers/gpu/drm/drm_fbdev_shmem.o:(.rodata+0x48): undefined reference to `drm_fb_helper_check_var'
ld: drivers/gpu/drm/drm_fbdev_shmem.o:(.rodata+0x50): undefined reference to `drm_fb_helper_set_par'
ld: drivers/gpu/drm/drm_fbdev_shmem.o:(.rodata+0x60): undefined reference to `drm_fb_helper_setcmap'
ld: drivers/gpu/drm/drm_fbdev_shmem.o:(.rodata+0x68): undefined reference to `drm_fb_helper_blank'
ld: drivers/gpu/drm/drm_fbdev_shmem.o:(.rodata+0x70): undefined reference to `drm_fb_helper_pan_display'
ld: drivers/gpu/drm/drm_fbdev_shmem.o:(.rodata+0xa0): undefined reference to `drm_fb_helper_ioctl'
ld: drivers/gpu/drm/drm_fbdev_shmem.o:(.rodata+0xc8): undefined reference to `drm_fb_helper_debug_enter'
ld: drivers/gpu/drm/drm_fbdev_shmem.o:(.rodata+0xd0): undefined reference to `drm_fb_helper_debug_leave'
make[2]: *** [scripts/Makefile.vmlinux:77: vmlinux] Error 1
make[1]: *** [/usr/src/linux-6.13.0-gentoo/Makefile:1227: vmlinux] Error 2
make: *** [Makefile:251: __sub-make] Error 2 |
To get to this I do the following Code: | cd /usr/src/linux
make distclean
zcat /proc/config.gz >.config
make olddefconfig
make menuconfig # exit with no changes
make -j64
Then, after the failure, I run:
make
which provided the output above |
The errors noted above are in the drm area - anyone else seeing this?
Last edited by ipic on Mon Jan 20, 2025 6:19 pm; edited 1 time in total |
|
Back to top |
|
|
ipic Guru
Joined: 29 Dec 2003 Posts: 431 Location: UK
|
Posted: Mon Jan 20, 2025 6:04 pm Post subject: |
|
|
The following configuration options in my .config were not set: Code: | CONFIG_DRM_AMD_ISP
CONFIG_DRM_SIMPLEDRM
CONFIG_SYSFB_SIMPLEFB |
When I set these to "Y", the kernel compiled and installed OK.
I'm about to reboot - I'll be back if it works. |
|
Back to top |
|
|
ipic Guru
Joined: 29 Dec 2003 Posts: 431 Location: UK
|
Posted: Mon Jan 20, 2025 6:19 pm Post subject: |
|
|
Booted OK
My guess would be that CONFIG_DRM_AMD_ISP is not the source of the problem.
It seems more likely that a simple frame buffer device is assumed - especially since the note in the config help says to enable if unsure.
Anyway - this may help someone. |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5362 Location: Bavaria
|
|
Back to top |
|
|
ipic Guru
Joined: 29 Dec 2003 Posts: 431 Location: UK
|
Posted: Tue Jan 21, 2025 7:40 am Post subject: |
|
|
No.
I reproduced it three times, and it's scripted. |
|
Back to top |
|
|
sam_ Developer
Joined: 14 Aug 2020 Posts: 2113
|
Posted: Tue Jan 21, 2025 10:19 pm Post subject: |
|
|
It's a kernel bug if it allows configuration options which result in a link failure. There's likely some missing #ifdef based on the CONFIG_* you have disabled. |
|
Back to top |
|
|
|