You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

HiveOS 5.4.0下无需i386头文件编译snd-usb-audio模块的方案

解决方法

方法1:指定64位架构编译

错误根源是编译系统默认尝试构建32位相关工具,而HiveOS为64位系统,直接指定架构为x86_64即可跳过32位依赖:

make ARCH=x86_64 -C . M=sound/usb modules

执行脚本准备步骤时同样加上架构参数:

make ARCH=x86_64 scripts/prepare

方法2:使用系统内核头文件编译

如果系统能获取对应版本的内核头文件,安装后编译会更简便:

apt-get install linux-headers-$(uname -r)

安装完成后,执行模块编译命令(系统会自动识别头文件路径,无需额外配置):

make -C /lib/modules/$(uname -r)/build M=$(pwd)/sound/usb modules

方法3:修改内核Makefile跳过32位工具构建

若前两种方法无效,可手动修改内核Makefile,移除32位工具的编译规则:

  1. 打开arch/x86/Makefile文件
  2. 找到archscripts相关规则,原内容类似:
    archscripts: arch/x86/tools/relocs_32.o arch/x86/tools/relocs_64.o
    
  3. 修改为仅保留64位工具:
    archscripts: arch/x86/tools/relocs_64.o
    
  4. 删除文件中所有与relocs_32.c、relocs_32.o相关的编译规则,之后重新执行模块编译命令。

内容的提问来源于stack exchange,提问作者HermDP

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 02:36:29