跳到主要内容

SDK 更换工具链

quick_config 中内置了更换工具链的功能,该配置支持常电和快起系统。包括:

  • 切换 rootfs 使用 musl 工具链
  • 切换 rootfs 使用 glibc 工具链

默认 SDK 配置使用 musl 工具链。另外内核使用 glibc 工具链,不可更换。

image-20250613141048022

提示

更换工具链 quick_config 支持 SDK 双向修改配置,可以任意切换,使用前需要执行 make distclean

quick_config 条目功能备注
musl_toolchain切换 rootfs 使用 musl 工具链使用前需要执行 make distclean
glibc_toolchain切换 rootfs 使用 glibc 工具链使用前需要执行 make distclean

使用示例

切换 musl 工具链

  1. 加载 SDK 环境变量 source build/envsetup.sh && lunch 选择需要开发的板级
  2. 执行 make distclean 清理上次编译产物
  3. 执行 quick_config,打开 quick_config 配置界面
  4. 选择 musl_toolchain 条目
  5. 阅读提示,确认无误按 Y
Loading asciinema cast...

切换 glibc 工具链

  1. 加载 SDK 环境变量 source build/envsetup.sh && lunch 选择需要开发的板级
  2. 执行 make distclean 清理上次编译产物
  3. 执行 quick_config,打开 quick_config 配置界面
  4. 选择 glibc_toolchain 条目
  5. 阅读提示,确认无误按 Y
Loading asciinema cast...

常见问题

ERROR 报错

image-20250613141346430

这段错误提示表明,在你执行 quick_config 之前,环境需要进行清理。错误提示建议你运行 make distclean 来清理当前的构建环境,否则会在编译时遇到错误。

错误分析:

  • 原因:在进行构建时,存在环境或配置冲突。这通常是因为之前的构建没有完全清理,导致当前配置和之前的状态不兼容。
  • 解决方案:按照错误提示,执行 make distclean 清理环境,然后再执行 quick_config。这样可以避免环境中残留的旧配置或编译文件影响当前的构建。

解决步骤:

  1. 在项目根目录下运行以下命令:

    make distclean

    这将清除之前的编译和配置文件,确保环境干净。

  2. 运行完 distclean 后,重新执行 quick_config,确保配置生效:

    quick_config