Skip to content

Version 2.42 Fails to Be Compiled in the Environment with an Earlier Kernel Version. #4212

@simon28li

Description

@simon28li
make[2]: Entering directory '/home/stage/root/spack-stage-util-linux-2.42-s2m3edj2xmcfrpiahxp43uoaypr2w7d3/spack-src'
  CCLD     mount
  CCLD     umount
  CCLD     mountpoint
  CCLD     lsblk
  CCLD     findmnt
  CCLD     fstrim
  CCLD     losetup
  CCLD     zramctl
  CCLD     swapon
  CCLD     swapoff
  CCLD     blkid
  CCLD     findfs
  CCLD     wipefs
  CCLD     mkswap
  CCLD     swaplabel
  CCLD     fsck
  CCLD     eject
  CCLD     lsns
  CCLD     lslocks
  CCLD     copyfilerange
/usr/lib64/gcc/aarch64-suse-linux/7/../../../../aarch64-suse-linux/bin/ld: misc-utils/copyfilerange-copyfilerange.o: in function `copy_range':
/home/stage/root/spack-stage-util-linux-2.42-s2m3edj2xmcfrpiahxp43uoaypr2w7d3/spack-src/misc-utils/copyfilerange.c:146: undefined reference to `copy_file_range'
collect2: error: ld returned 1 exit status

The root cause of this error is that the copy_file_range system call function does not exist in the current kernel version of my system. My kernel version is as follows:

Linux linux-bftj 4.12.14-193-default  SMP Tue Apr 9 13:29:32 UTC 2019 (85c4156) aarch64 aarch64 aarch64 GNU/Linux

However, due to my environment restrictions, I cannot upgrade the kernel. Is there a way to compile without upgrading the kernel? Also, I tried the --disable-copyfilerange option, but the compilation still failed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    BLOCKERRequired for the next release.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions