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

交叉编译Godot 3.5.3 ARM32导出模板遇工具链问题求助

排查Godot 3.5.3 ARM32交叉编译工具链未生效问题

1. 确认工具链PATH优先级

系统会优先调用PATH中靠前位置的编译器,先检查工具链目录是否排在系统gcc路径之前:

  • 执行 echo $PATH,查看toolchain/bin路径是否出现在/usr/bin(系统gcc默认目录)之前
  • 如果顺序不符,临时调整PATH:
    export PATH=/你的工具链绝对路径/toolchain/bin:$PATH
    
    再次执行echo $PATH确认顺序后,再启动编译流程

2. 验证工具链可执行性

先确保工具链本身能正常调用:

  • 执行 arm-godot-gnueabihf-gcc --version,若提示"command not found",说明工具链路径错误或未正确构建
  • 重新运行仓库中工具链的构建脚本,确保过程无报错

3. 检查编译脚本的环境变量配置

打开仓库的编译脚本(如build.sh),确认是否显式指定了交叉编译器:

  • 脚本中必须添加以下环境变量设置:
    export CC=/你的工具链绝对路径/toolchain/bin/arm-godot-gnueabihf-gcc
    export CXX=/你的工具链绝对路径/toolchain/bin/arm-godot-gnueabihf-g++
    
  • 若脚本未设置,手动添加后再执行编译

4. 直接在scons命令中强制指定编译器

Godot基于scons构建,可直接在编译命令中显式指定编译器,绕开环境变量问题:

scons platform=linux arch=arm32 CC=/你的工具链绝对路径/toolchain/bin/arm-godot-gnueabihf-gcc CXX=/你的工具链绝对路径/toolchain/bin/arm-godot-gnueabihf-g++ target=release

可根据需求替换target=release为target=debug等参数

5. 清理旧构建缓存

之前的错误构建缓存可能残留编译器设置,先清理再重新编译:

scons --clean

6. 排查系统gcc全局替代设置

部分系统通过update-alternatives设置了默认gcc,执行以下命令查看:

update-alternatives --list gcc

若工具链gcc未在列表中,无需全局修改,只需确保编译时显式指定工具链路径即可,避免影响其他系统程序

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 16:03:35