Linux 错误:无法由单个用户移动立即数

Linux 错误:无法由单个用户移动立即数,linux,gcc,makefile,glibc,Linux,Gcc,Makefile,Glibc,我正在为AARC64编译glibc-2.30。我使用的是非常基本的配置: ../configure \ --with-headers=/tmp/headers/include \ --disable-sanity-checks \ --enable-kernel=3.18.0 配置时没有错误,但在运行“make”时出现以下错误: 我假设必须添加aarch64特定的配置参数?aarch64汇编程序在遇到无法在寄存器中编码的常量时会发出此错误消息。系统调用包装器中唯一的常量是系统调用号

我正在为AARC64编译glibc-2.30。我使用的是非常基本的配置:

../configure \
  --with-headers=/tmp/headers/include \
  --disable-sanity-checks \
  --enable-kernel=3.18.0
配置时没有错误,但在运行“make”时出现以下错误:


我假设必须添加aarch64特定的配置参数?

aarch64汇编程序在遇到无法在寄存器中编码的常量时会发出此错误消息。系统调用包装器中唯一的常量是系统调用号,因此这表明内核头用于错误的体系结构,并且系统调用号与AArch64不兼容。(内核头是特定于体系结构的,在交叉编译时必须使用交叉编译器安装。)

Ah!你说得对。我使用的是32位头文件。我的印象是,头文件在哪里是不可知的(因为它们是源代码),但我猜我错了:)谢谢!
../sysdeps/unix/syscall-template.S: Assembler messages:
../sysdeps/unix/syscall-template.S:78: Error: immediate cannot be moved by a single instruction