Jump to content

Greek64

Validating
  • Posts

    1
  • Joined

  • Last visited

  1. There should be another error before this for the failed `zfs-dkms` installation. Probably something along the lines of "configure: error: Unable to build an empty module." That happens because the kernel header package "linux-headers-current-meson64" is missing a file needed to build out-of-tree modules (dkms). Check if "module.lds" exists under "/usr/src/linux-headers-5.10.123-meson64/scripts/". If not, you have found the root of your problem. The fix is somewhat simple. You can just construct your own "module.lds" and place it in the above directory. The file contents consists of following: The contents of the official "module.lds.S" file of the 5.10 kernel source (can be found here) without the last "#include" line The contents of the architecture specific "module.lds.h" header file. Odroid N2+ should be arm64, so the contents of "/usr/src/linux-headers-5.10.123-meson64/arch/arm64/include/asm/module.lds.h" For my Odroid HC4 the module.lds looks as follows: /* * Common module linker script, always used when linking a module. * Archs are free to supply their own linker scripts. ld will * combine them automatically. */ SECTIONS { /DISCARD/ : { *(.discard) *(.discard.*) } __ksymtab 0 : { *(SORT(___ksymtab+*)) } __ksymtab_gpl 0 : { *(SORT(___ksymtab_gpl+*)) } __ksymtab_unused 0 : { *(SORT(___ksymtab_unused+*)) } __ksymtab_unused_gpl 0 : { *(SORT(___ksymtab_unused_gpl+*)) } __ksymtab_gpl_future 0 : { *(SORT(___ksymtab_gpl_future+*)) } __kcrctab 0 : { *(SORT(___kcrctab+*)) } __kcrctab_gpl 0 : { *(SORT(___kcrctab_gpl+*)) } __kcrctab_unused 0 : { *(SORT(___kcrctab_unused+*)) } __kcrctab_unused_gpl 0 : { *(SORT(___kcrctab_unused_gpl+*)) } __kcrctab_gpl_future 0 : { *(SORT(___kcrctab_gpl_future+*)) } .init_array 0 : ALIGN(8) { *(SORT(.init_array.*)) *(.init_array) } __jump_table 0 : ALIGN(8) { KEEP(*(__jump_table)) } } SECTIONS { .plt 0 : { BYTE(0) } .init.plt 0 : { BYTE(0) } .text.ftrace_trampoline 0 : { BYTE(0) } } Since you have the same kernel and also the same architecture the file contents should work as is also for you. As for why this file is missing, the reason is some upstream kernel module compiling changes, which affected armbian build scripts because the Makefiles were removing the "module.lds" file on "make clean". This SHOULD have been fixed with AR-608 / #2545. Maybe @Igor could shed some light on which kernel version will have the "module.lds" files included in the header package (If I understood it correctly, the header packages for 5.15.y kernels do not have this problem).
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines