在make image时生成了NK.nb0、NK.nb1、........NK.nb14

jiajia6254 2007-11-14 06:14:35
#define NKNAME NK

; NK Start address
#define NKSTART 8C100000
#define NKLEN 01d0000

#define RAMSTART 8dd00000
#define RAMLEN 02200000

$(NKNAME) $(NKSTART) $(NKLEN) RAMIMAGE
RAM $(RAMSTART) $(RAMLEN) RAM

编译通过,但是在make image时生成了NK.nb0、NK.nb1、........NK.nb14,是应为内核大于32兆了吗?那为什么编译能通过?
...全文
267 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
eagle1597 2008-11-30
  • 打赏
  • 举报
回复
当生成了nb1等东西时, 检查romsize就是了.
graduated 2008-11-30
  • 打赏
  • 举报
回复
这个问题太普遍了
其实看书的话,这种问题不用在这里发帖的
iwillbeback008 2008-11-30
  • 打赏
  • 举报
回复
这个帖子估计很多人要看看,把它顶起来。楼主不厚道,这么久不结贴。
0001cxg 2008-11-02
  • 打赏
  • 举报
回复
的确,该贴不错
wangxin_801115 2008-11-02
  • 打赏
  • 举报
回复
mark
dadalan 2008-11-02
  • 打赏
  • 举报
回复
在config.bib文件中有个限制大小的宏,不是看这个数量。
gooogleman 2008-10-31
  • 打赏
  • 举报
回复
这个帖子估计很多人要看看,把它顶起来。楼主不厚道,这么久不结贴。
constantine 2008-10-31
  • 打赏
  • 举报
回复
你要考了你的系统添加的组件的多少,越多最后生成的文件有效数据就越大。当有效数据超过你定义的大小,那么就会出现你这样的情况。
nbx的文件大小是一定的,就是说不过生成几个,每个都是一样大,最后一个正常会有很多0在后面,你可以看文件16进制的工具看一下。
对于文件的大小设置我建议你参考bin文件,最后生成的bin文件大小基本上就接近你需要的大小了,建议稍微大一点。
没有规定说一定是32M的,我自己的平台就只用24M
你的明显是小得可怜!
jiajia6254 2007-11-15
  • 打赏
  • 举报
回复
问题解决了,在你们的提示下,仔细检查了.bib文件。找到了错误了#define NKLEN 01d0000 应该是#define NKLEN 01d00000少了一个0,奇怪的是我编译的时候却通过了。感激!
jiajia6254 2007-11-15
  • 打赏
  • 举报
回复
NKSTART和NKLEN是config.bib文件中定义的宏 ,但是在开始的时候已经给他们定义好了啊,
#define NKLEN 01d00000
#define NKSTART 8C100000

congfig.bib中不能到处引用吗???
yashi 2007-11-15
  • 打赏
  • 举报
回复
NKSTART和NKLEN也只是config.bib文件中定义的宏而已。
jiajia6254 2007-11-15
  • 打赏
  • 举报
回复
谢谢你们的回答,但是我的ROMSIZE是这么设置的:
ROMSTART=$(NKSTART)
ROMWIDTH=32
ROMSIZE= $(NKLEN)
和RAMIMAGE 的大小是一样的?还小吗??
comiscience 2007-11-14
  • 打赏
  • 举报
回复
同意上面的人说的~
zippo2004 2007-11-14
  • 打赏
  • 举报
回复
你生成的NK文件比你设置的ROMSIZE要大,所以会出现上述情况

检查config.bib文件中ROMSIZE的大小

19,500

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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