问题现象

最近在交叉编译 X86-64 平台的 Linux 内核时,出现如下编译警告:

CONFIG_X86_X32 enabled but no binutils support

查看 .config 文件确实打开了 CONFIG_X86_X32:

CONFIG_X86_X32=y

arch/x86/Kconfig 中找到对 CONFIG_X86_X32 的说明:

config X86_X32
    bool "x32 ABI for 64-bit mode"
    depends on X86_64
    ---help---
      Include code to run binaries for the x32 native 32-bit ABI      for 64-bit processors.  An x32 process gets access to the
      full 64-bit register file and wide data path while leaving
      pointers at 32 bits for smaller memory footprint.

      You will need a recent binutils (2.22 or later) with
      elf32_x86_64 support enabled to compile a kernel wi