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

使用arm-none-linux-gnueabihf-gcc编译成功却未生成可执行文件

编译问题排查与解答

未生成可执行文件的可能原因

  • 输出目录不存在:编译命令指定输出到compiled/my_prog,但gcc不会自动创建不存在的目录。先执行mkdir -p compiled创建目录,再重新编译。
  • 目录权限不足:如果compiled目录存在但你没有写入权限,会导致文件无法生成。执行chmod +w compiled调整权限后重试。
  • 链接阶段隐式失败:部分情况下编译无警告,但链接过程可能因依赖缺失静默失败。添加-v参数查看完整编译流程,定位问题:
    /home/User/Downloads/arm-gnu-toolchain-12.2.rel1-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf-gcc -v my_code.c -o compiled/my_prog
    

32位/64位工具链差异的疑问解答

  • 系统依赖不匹配:你使用的32位ARM工具链需要系统提供32位的依赖库,而Fedora 36默认是64位环境,可能缺少这些32位依赖,导致链接阶段无法完成,进而不生成可执行文件;而64位ARM工具链与系统架构匹配,依赖齐全,所以能正常生成文件。
  • 目标架构适配:Cortex-A53支持32位ARMv8-A和64位AArch64两种模式。如果目标是32位,需要在Fedora上安装32位开发依赖(比如glibc-devel.i686),确保工具链能找到必要的标准库,才能正常生成32位可执行文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 00:01:19