本文汇总自己在编译openbmc时遇到的一些问题及解决思路,希望对有兴趣研究openbmc的同学有一些帮助。


项目地址:https://github.com/openbmc/openbmc

编译步骤:https://github.com/openbmc/openbmc

我编译主机的配置:

虚拟机 Ubuntu16.04
gcc&g++ 6.5.0
内存大小 4GB
线程数 8
硬盘空间 256GB

编译成功的标志:全部任务成功结束或者在/tmp/deploy/images/romulus下找到编译的相应镜像。


Q & A

  1. 出现某个包do_unpack失败

    这个可能时源的地址被墙了,需要翻墙。
  2. 出现某个包do_compile失败

    可能有两个原因,第一检查gccc编译器及g++编译器,第二可能内存不够,解决方法建立内存交换区,可以参考这篇文章,或者在build_dir/conf/local.conf修改/增加这两个变量BB_NUMBER_THREADS = "2",PARALLEL_MAKE = "-j 4",这两个变量分别代表bitbake执行使用的线程数及编译时使用的线程数,可以通过减少线程数降低内存开销。
  3. 强制关闭bitbake进程后,再次执行发现有的包死活执行失败,提示the basehash value changed from xxx to xxx

    有一个简单的办法,找到错误信息中bb文件的位置,vim打开他,在任意一行添加空行保存,骗编译器重新编译该菜谱。
  4. bitbake卡死不动,没有任何输出信息

    ps看一下是不是运行了多个bitbake服务器,关闭它们重新运行。还有一种可能是bitbake不能连接到网络,需要检查网络。
  5. 其他错误

    如果实在是找不到办法,在你确定自己的环境满足要求后,删除目录sstate-cache,cache,tmp目录下的所有文件,重新编译。

如果你并没有找到合适的问题解决方法或者有其他问题解决方法,欢迎在留言区给出。之后我如果遇到其他的问题,我也会继续更新这篇文章。

openbmc编译错误汇总,持续更新,建议收藏的更多相关文章

  1. React Native错误汇总(持续更新)

    错误1 Element type is invalid-: 错误描述: Element type is invalid: expected a String(for built-in componen ...

  2. 《WCF技术剖析》博文系列汇总[持续更新中]

    原文:<WCF技术剖析>博文系列汇总[持续更新中] 近半年以来,一直忙于我的第一本WCF专著<WCF技术剖析(卷1)>的写作,一直无暇管理自己的Blog.在<WCF技术剖 ...

  3. DataStage 错误集(持续更新)

    DataStage 错误集(持续更新) DataStage序列文章 DataStage 一.安装 DataStage 二.InfoSphere Information Server进程的启动和停止 D ...

  4. 中国.NET:各地微软技术俱乐部汇总(持续更新中...)

    中国.NET:各地微软技术俱乐部汇总(持续更新中...)   本文是转载文,源地址: https://www.cnblogs.com/panchun/p/JLBList.html by ​史记微软. ...

  5. redis日常使用汇总--持续更新

    redis日常使用汇总--持续更新 工作中有较多用到redis的场景,尤其是触及性能优化的方面,传统的缓存策略在处理持久化和多服务间数据共享的问题总是不尽人意,此时引入redis,但redis是单线程 ...

  6. 跟我学SpringCloud | 终篇:文章汇总(持续更新)

    SpringCloud系列教程 | 终篇:文章汇总(持续更新) 我为什么这些文章?一是巩固自己的知识,二是希望有更加开放和与人分享的心态,三是接受各位大神的批评指教,有任何问题可以联系我: inwsy ...

  7. Android源码编译常见错误(持续更新)

    本文为个人工作中处理遇到的编译问题做个小结,后续遇到新的问题,持续更新. No such file or directory: 1. 检查路径是否有问题,文件是否存在,若文件存在且路径没问题 2. 检 ...

  8. Type Script在Visual Studio 2013中的问题汇总(持续更新…)

    TypeScript在vs2012下的问题 TypeScript对VS2012支持度比较低,建议升级为VS2013版本以上. 在VS2013中无法创建TypeScript项目 VS2013默认不支持T ...

  9. 优步UBER司机全国各地最新奖励政策汇总(持续更新...)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://didi-uber.com/archiv ...

随机推荐

  1. PyQt(Python+Qt)学习随笔:Qt Designer中部件的enabled属性

    enabled属性非常简单,最开始老猿没准备介绍该属性的,因为大家都应该知道,但仔细看了看官网文章,觉得还是有些细节可能很少有人注意到,因此还是在此介绍一下. enabled属性用于表示部件是否可用, ...

  2. H5相关知识点整理

    01-HTML5基础 了解HTML5 ☞HTML5属于上一代HTML的新迭代语言,设计HTML5最主要的目的是为了在移动设备上支持多媒体!!! 例如: video 标签和 audio 及 canvas ...

  3. js已知A,B两点坐标,在线段AB上有C点,已知AC的距离,求C点的坐标

    /** * @param {Number} _x1 A点坐标 * @param {Number} _y1 A点坐标 * @param {Number} _x2 B点坐标 * @param {Numbe ...

  4. 【SDOI2017】天才黑客(前后缀优化建图 & 最短路)

    Description 给定一张有向图,\(n\) 个点,\(m\) 条边.第 \(i\) 条边上有一个边权 \(c_i\),以及一个字符串 \(s_i\). 其中字符串 \(s_1, s_2, \c ...

  5. Zabbix 新版微信告警-转载

    Zabbix 新版微信告警 Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越多的企业开始使用zabbix结合微信作为主要的告警方式,这样可以及时有效的把告警信 ...

  6. python命名切片

    命名切片 c = slice(2, 5) a = [1, 2, 3, 4, 5, 6, 7] print(a[c])

  7. sql server如何把退款总金额拆分到尽量少的多个订单中

    一.问题 原来有三个充值订单,现在要退款450元,如何分配才能让本次退款涉及的充值订单数量最少?具体数据参考下图: 二.解决方案 Step 1:对可退金额进行降序排列,以便优先使用可退金额比较大的订单 ...

  8. 时间转成x时x分x秒的封装(简易版)

    function createTime(t) { let timer; if (t <= 0 || !t || t < 60 || typeof(t)!=='number') timer ...

  9. Map、Debug追踪

    Map集合   概述   现实生活中,我们常会看到这样一种集合:IP地址和主机名,身份证号和个人,系统用户名与系统用户对象等,这种一一对应的关系,我们把它称之为映射.Java当中提供了专门的集合类用来 ...

  10. 记:create-react-app暴露配置报错

    上面主要是说 webpack 版本冲突 不是create-react-app本身的问题,需要手动解决. 解决办法: npm run eject // 显示所有的依赖项 如果运行出现类似这样的报错 Ar ...