无论编译哪一中u-boot,总体是错误“‘CONFIG_ENV_SIZE’未声明(不在函数内)”

追风忆梦 2013-12-25 07:53:10
虚拟机中装的是ubuntu12.04,现在,无论编译什么u-boot,总提示“include/environment.h:157:21: 错误: ‘CONFIG_ENV_SIZE’未声明(不在函数内)
make[1]: *** [env_embedded.o] 错误 1

,u-boot源码是正确的,在其他同学的虚拟机中可以完整编译!刚开始以为是交叉编译环境的问题,换了几个交叉编译环境都不行!又换了几种u-boot ,还是不行!希望大家可以解答!谢谢!
...全文
1182 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
端口初始化 2015-05-16
  • 打赏
  • 举报
回复
楼上神人啊,总算解决这个问题了
0x16 2014-03-11
  • 打赏
  • 举报
回复 1
问题大致找到了,env_embeded.c在用<xxx>引用头文件的时候 #include <config.h> 没有引用到 ../include/config.h 而ubuntu系统中也有 /usr/include/config.h 被优先匹配。 解决方案 在 env_embeded.c 里替换如下代码即可: /*Guixue++ 2014-03-11 DES: Support for ubuntu 12.04 CONFIG_ENV_SIZE undefine error. */ #ifndef CONFIG_ENV_SIZE #include "../include/config.h" #endif
0x16 2013-12-29
  • 打赏
  • 举报
回复
今天编译openwrt,又遇到了。 也发现网上 http://fr.it-usenet.org/thread/18417/22208/ 有类似的情况。 但也没有给出 root cause。
0x16 2013-12-27
  • 打赏
  • 举报
回复
我也遇到同一个问题,ubuntu 12.04,(奇怪的是 在ubuntu 8.04下 没问题,) 原因是 CONFIG_ENV_SIZE 没定义,(文件没有进来?还是其他原因?) 临时修改方案是: 在 include/enviroment.h 中的 #define ENV_SIZE (CONFIG_ENV_SIZE - ENV_HEADER_SIZE) 行前,加入定义。 #ifndef CONFIG_ENV_SIZE #define CONFIG_ENV_SIZE 0x400 #endif Root cause 我还没找到。
Carl_CCC 2013-12-26
  • 打赏
  • 举报
回复
我们的版本都是CFG_EVN_SIZE, 没见过CONFIG_ENV_SIZE,你的uboot是什么版本啊。

1,324

社区成员

发帖
与我相关
我的任务
社区描述
主要是开发驱动技术
社区管理员
  • 驱动程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧