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

使用SCons构建OS镜像失败问题排查及解决(已修复)

SConstruct构建OS镜像时liblto_plugin.so找不到问题的解决

问题背景

学习操作系统开发,使用SConstruct脚本替代Makefile构建OS镜像,工具链为gcc 13.1.0 + binutils 2.39(使用Makefile构建时无问题,系统内置gcc 11.4.0、binutils 2.38),SConstruct代码与教程完全一致,但构建失败。

报错信息

scons: Reading SConscript files ... scons: done reading SConscript files.
scons: Building targets ... Assembling [src/boot_loader/fst_stg/boot.asm]
Linking    [build/i686_debug/fst_stg_fat12/fst_stg.bin]
i686-elf-gcc: fatal error: '-fuse-linker-plugin', but liblto_plugin.so not found
compilation terminated.
scons: *** [build/i686_debug/fst_stg_fat12/fst_stg.bin] Error 1
scons: building terminated because of errors.

排查情况

系统为Ubuntu 22.04.3 LTS,通过locate命令确认工具链中存在liblto_plugin.so:

.../tool_chain/gcc-build-13.1.0/gcc/liblto_plugin.so
.../tool_chain/gcc-build-13.1.0/lto-plugin/.libs/liblto_plugin.so
.../tool_chain/i686-elf/libexec/gcc/i686-elf/13.1.0/liblto_plugin.so

解决方法

更换Linux发行版,从Ubuntu 22.04.3 LTS改为Fedora后,构建成功,问题解决。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 05:23:26