0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

初次编译rk3568(rk3576)Linux 6.1内核踩坑记录:从报错终止到成功解决的完整流程

jf_44130326 来源:Linux1024 2026-02-06 16:47 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

很多刚接触瑞芯微rk系列芯片开发的小伙伴,在初次编译基于Linux 6.1内核的系统时,很容易因为环境依赖问题卡壳。最近我在编译rk3576rk3568流程类似)Linux 6.1内核时就遇到了典型报错,从定位问题到最终解决踩了不少小坑,今天把完整过程整理出来,帮大家少走弯路。

wKgZPGkaixiAOw9UAAGJ3owc3Qg452.png

一、问题突发:编译中途突然报错终止

按照官方文档配置好编译环境后,我执行了内核编译命令,一开始流程正常,直到终端突然弹出一连串错误信息,编译直接终止。

仔细看报错日志,核心提示有两个:

1.明确指出“Your gmp header is missing”——也就是gmp相关的头文件缺失();

2.后续跟着一系列执行失败的日志,比如“Running /home/sc/rk3576_linux/device/rockchip/common/scripts/mk-kernel.sh - do_build failed!”,且exit code1(、),这说明是依赖缺失导致编译脚本执行失败。

其实到这里,报错信息已经很贴心——不仅告诉我们缺什么,还直接给了解决方案。

wKgZPGkaixiAEaVbAANg1PgCt1Y675.png

二、定位关键:跟着报错提示找解决方案

“gmp header is missing”这句话下面,终端直接给出了安装命令:“Please install it: sudo apt-get install libgmp-dev”(、)。

这里要划个重点:Linux下编译报错时,先仔细看报错日志的建议操作,很多时候官方或编译器已经把解决方案直接写在日志里了,不用盲目去搜教程。

我当时没多想,直接复制了这个命令开始执行,没想到后续还有个小插曲。

三、解决步骤:执行安装+验证,遇到小问题再调整

第一步:执行依赖安装命令

在终端输入报错提示里的命令:

sudo apt-get install libgmp-dev()

输入sudo密码后,系统会自动开始处理:

先读取软件包列表,分析依赖关系(、);

然后提示会同时安装libgmpxx4ldbl”,这是libgmp-dev的依赖包,属于正常情况();

最终确认新安装2个软件包。

输入“y”确认后,系统开始下载并自动安装,最后提示正在处理用于libc-bin的触发器,看起来安装成功了。

第二步:重新编译仍报错?试试环境重置

本以为安装完就能正常编译,结果重新执行编译命令后,报错依然存在。这时候我才意识到,可能是之前的编译缓存或环境变量没刷新,于是做了两个操作:

1.卸载无效依赖并重新安装

先尝试卸载可能冲突的libmpc-dev(虽然终端提示“libmpc-dev未安装,不会被卸载)(到),再重新执行sudo apt-get install libmpc-dev,确保相关依赖完整()。

2.补充安装环境变量相关工具

wKgZPGkaixmALn34AAKEqIKcfeQ945.png

因为报这个错误,后来看了一下源码目录就有这个依赖,基本上是环境配置没配好

wKgZPGkaixmAUsi5AACtcNQ1C80549.png

参考瑞芯微编译环境的常见配置,又执行了两个命令:

wKgZPGkaixmAbUn3AABCWQs6t9Y084.png

sudo apt-get install binfmt-support qemu-user-static(用于处理不同架构的二进制文件,);

sudo dpkg -i ubuntu-build-service/packages/*sudo apt-get install -f(修复deb包依赖,确保环境变量配置正确,、)。

做完这些后,我关闭了当前终端重新打开(刷新环境变量),再次执行编译命令——这次终于顺利跑通,没有再出现报错!

四、总结:初次编译rk内核的2个避坑要点

1.优先看报错日志的直接提示

像这次的gmp头文件缺失,报错里直接给了安装命令,跟着做就能解决80%的问题,不用一开始就去搜复杂的教程。

2.依赖安装后记得刷新环境

有时候依赖安装成功了,但编译脚本读不到新安装的文件,关闭终端重新打开、或执行source /etc/profile刷新环境变量,往往能解决安装了还报错的问题。

如果大家在编译rk3568/3576等芯片的Linux内核时,遇到类似的依赖报错,不妨按照这个流程试试。如果还有其他踩坑经历,欢迎在评论区交流,一起帮更多开发者避坑~


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 内核
    +关注

    关注

    4

    文章

    1474

    浏览量

    43088
  • Linux
    +关注

    关注

    88

    文章

    11807

    浏览量

    219508
  • RK3568
    +关注

    关注

    5

    文章

    654

    浏览量

    8097
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    RK3576 Android 14.0 SDK开发指南(第一集)

    RK3576 Android 14.0 SDK代码编译 SDK下载到本地后大概70多个G 下载后要做个校验 解压后内核源码 kernel代码路径说明 Android14支持6.1
    发表于 05-20 08:43

    【作品合集】米尔RK3576开发板测评

    米尔RK3576开发板测评作品合集 产品介绍: RK3576 是瑞芯微一款面向AI市场推出的高性能处理器,它配备了四核Cortex-A72和四 核Cortex-A53 的 CPU,集成了6TOPS
    发表于 09-11 10:19

    RK3568 SDK 的编译

    RK3568 SDK 的编译
    的头像 发表于 12-13 11:46 3059次阅读
    <b class='flag-5'>RK3568</b> SDK 的<b class='flag-5'>编译</b>

    新品体验 | RK3576开发板

    RK3399、RK3566、RK3568RK3588、RK3576等型号的核心板与评估板。鉴于RK
    的头像 发表于 11-01 08:08 3375次阅读
    新品体验 | <b class='flag-5'>RK3576</b>开发板

    瑞芯微RK3568开发板Linux编译报错404怎么办?触觉智能教你轻松解决

    本文介绍瑞芯微RK3568主板/开发板SDK编译流程编译报错404的解决方法,使用触觉智能EVB356
    的头像 发表于 11-05 11:02 1514次阅读
    瑞芯微<b class='flag-5'>RK3568</b>开发板<b class='flag-5'>Linux</b><b class='flag-5'>编译</b><b class='flag-5'>报错</b>404怎么办?触觉智能教你轻松解决

    RK3576单板发布倒计时:RK3399与RK3576对比

    好多人说RK3576RK3399的升级版,某种程度上也可以这么说,RK3576在强大的多媒体功能的基础上,性能和接口都进行了升级 一、工艺 性能 rk3576采用 Rockchip
    的头像 发表于 12-03 16:59 2746次阅读
    <b class='flag-5'>RK3576</b>单板发布倒计时:<b class='flag-5'>RK</b>3399与<b class='flag-5'>RK3576</b>对比

    NPU性能深度评测:瑞芯微RK3588、RK3576RK3568RK3562

    随着AI技术不断发展,越来越多的嵌入式设备开始集成NPU(神经网络处理单元),以实现更高效的AI推理。作为国产芯片厂商的佼佼者,瑞芯微推出的RK3588、RK3576RK3568RK
    的头像 发表于 04-03 11:17 7671次阅读
    NPU性能深度评测:瑞芯微<b class='flag-5'>RK</b>3588、<b class='flag-5'>RK3576</b>、<b class='flag-5'>RK3568</b>、<b class='flag-5'>RK</b>3562

    揭秘,瑞芯微全系拥抱Linux 6.1内核的底层逻辑

    近期,瑞芯微(Rockchip)基本完成了旗下产品Linux6.1BSP内核更新,引发了不小的行业热议。除了低端RK3506依旧使用Buildroot构建系统外,RK3588、
    的头像 发表于 05-16 08:31 1483次阅读
    揭秘,瑞芯微全系拥抱<b class='flag-5'>Linux</b> <b class='flag-5'>6.1</b><b class='flag-5'>内核</b>的底层逻辑

    硬核上车!RK3576基于Ubuntu部署ROS机器人系统详细攻略(下)

    3562、RK3566、RK3568RK3576RK3588等Arm64位芯片平台,各型号触觉智能均有配套核心板及开发板,实现了百分百全国产。常见
    的头像 发表于 07-11 18:34 3685次阅读
    硬核上车!<b class='flag-5'>RK3576</b>基于Ubuntu部署ROS机器人系统详细攻略(下)

    RK3568 Android11编译环境搭建及报错解决指南

    在嵌入式开发领域,RK3568 芯片凭借其出色的性能被广泛应用。基于 RK3568 进行 Android11 系统的开发,首先要搭建好编译环境。本文将详细介绍在 Ubuntu20.04 系统上搭建
    的头像 发表于 02-04 17:37 2057次阅读
    <b class='flag-5'>RK3568</b> Android11<b class='flag-5'>编译</b>环境搭建及<b class='flag-5'>报错</b>解决指南

    RK3576+Android15+Linux6.1调试EM05 4G模块全记录底层到上层的与破局

    )服务。最近我们在 RK3576 开发板 + Android15 系统 + Linux6.1 内核 环境下调试EM05 4G 模块 时,就遇到了“RIL 起不来”
    的头像 发表于 02-03 15:27 2940次阅读
    <b class='flag-5'>RK3576+Android15+Linux6.1</b>调试EM05 4G模块全<b class='flag-5'>记录</b>:<b class='flag-5'>从</b>底层到上层的<b class='flag-5'>踩</b><b class='flag-5'>坑</b>与破局

    RK3576 Linux SDK手动适配RK3568,省下时间又省钱

    基于 RK3568 开发物联网设备,但官方 SDK 申请还在排队,于是决定已有的 RK3576 Linux SDK 手动适配,最终成功
    的头像 发表于 02-02 17:17 1602次阅读
    <b class='flag-5'>从</b><b class='flag-5'>RK3576</b> <b class='flag-5'>Linux</b> SDK手动适配<b class='flag-5'>RK3568</b>,省下时间又省钱

    【迅为工业RK3568稳定可靠】itop-3568开发板Linux驱动开发实战:RK3568内核模块符号导出详解

    【迅为工业RK3568稳定可靠】itop-3568开发板Linux驱动开发实战:RK3568内核模块符号导出详解
    的头像 发表于 11-21 13:25 1581次阅读
    【迅为工业<b class='flag-5'>RK3568</b>稳定可靠】itop-<b class='flag-5'>3568</b>开发板<b class='flag-5'>Linux</b>驱动开发实战:<b class='flag-5'>RK3568</b><b class='flag-5'>内核</b>模块符号导出详解

    迅为RK3576对比RK3568:AI算力与接口的全面跃迁

    迅为RK3576对比RK3568:AI算力与接口的全面跃迁
    的头像 发表于 12-22 15:24 2382次阅读
    迅为<b class='flag-5'>RK3576</b>对比<b class='flag-5'>RK3568</b>:AI算力与接口的全面跃迁

    迅为电子RK系列开发板SDK内核正式升级至6.1 LTS版本

    迅为RK3568RK3588、RK3576RK3562系列开发板,SDK内核5.10版本正
    的头像 发表于 03-16 16:18 472次阅读