![]() |
|
||||||||||||||
| | 首页 | 新闻 | 文库 | 方案 | 技术 | 独家 | 座谈 | 下载 | 图库 | 开发板 | 仿真器 | 邮购 | VIP会员 | 芯片代购 | 客户评价 | | ||
|
||
|
|||||
| uclinux-2008R1-RC8(bf561)到VDSP5的移植(4):使用head.s做为入口点 | |||||
作者:快乐虾 文章来源:http://blog.csdn.net/lights_joy 点击数: 更新时间:2008-4-30 ![]() |
|||||
|
创建uclinux工程时,默认的入口是uclinux-2008r1-rc8_basiccrt.s,而我们需要用head.s做为入口,因此需要修改ldf文件中的相关定义。
在uclinux-2008r1-rc8.ldf文件中有这么几行:
$OBJECTS_CORE_A =
/*$VDSG<insert-user-objects-for-coreA-beginning> */
/* Text inserted between these $VDSG comments will be preserved */
/*$VDSG<insert-user-objects-for-coreA-beginning> */
".\Debug\uclinux-2008r1-rc8_basiccrt.doj"
, RT_LIB_NAME(profile561)
, $COMMAND_LINE_OBJECTS {!DualCoreMem("CoreB")}
, "cplbtab561a.doj"
, RT_OBJ_NAME(crtn561)
在此先删除uclinux-2008r1-rc8_basiccrt.doj,于是就变成了
$OBJECTS_CORE_A =
/*$VDSG<insert-user-objects-for-coreA-beginning> */
/* Text inserted between these $VDSG comments will be preserved */
/*$VDSG<insert-user-objects-for-coreA-beginning> */
RT_LIB_NAME(profile561)
, $COMMAND_LINE_OBJECTS {!DualCoreMem("CoreB")}
, "cplbtab561a.doj"
, RT_OBJ_NAME(crtn561)
此外,还要在processor p0中保留__start的位置。在默认生成的LDF文件中,是这样的:
RESOLVE(start, 0xFFA00000)
KEEP(start,_main)
我们将其指向head.s中的__start,修改后变成:
RESOLVE(__start, 0xFFA00000)
KEEP(__start,_main)
当然,这样修改后会造成一系列的错误:
'CONFIG_BANK_0' referenced from 'corea.dlb[head.doj]'
'CONFIG_BANK_1' referenced from 'corea.dlb[head.doj]'
'CONFIG_BANK_2' referenced from 'corea.dlb[head.doj]'
'CONFIG_BANK_3' referenced from 'corea.dlb[head.doj]'
'V_AMBEN' referenced from 'corea.dlb[head.doj]'
'__bss_start [___bss_start]' referenced from 'corea.dlb[head.doj]'
'__bss_stop [___bss_stop]' referenced from 'corea.dlb[head.doj]'
'_sdata [__sdata]' referenced from 'corea.dlb[head.doj]'
'_stext [__stext]' referenced from 'corea.dlb[head.doj]'
'bf53x_relocate_l1_mem [_bf53x_relocate_l1_mem]' referenced from 'corea.dlb[head.doj]'
'cmdline_init [_cmdline_init]' referenced from 'corea.dlb[head.doj]'
'init_thread_union [_init_thread_union]' referenced from 'corea.dlb[head.doj]'
'start_kernel [_start_kernel]' referenced from 'corea.dlb[head.doj]'
没关系,这正好说明我们的head.s已经开始起作用了。
|
|||||
| 文章录入:admin 责任编辑:admin | |||||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||||
| 最新热点 | 最新推荐 | 相关文章 | ||
| 前置放大器在移动医疗服务系 便携式多通道大容量生理信号 防腐监测仪的设计与应用 基于AD1674的酶标仪的设计 基于C/S模式的JRTPLIB库的测 ffmpeg与jrtplib相结合应用 blackfin模拟摄像头驱动中的 可编程逻辑在数字信号处理系 发现VDSP4.5一个BUG:单步调 VDSP5.0双核工程下sml3中的变 |
| 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| | 本站介绍 | 合作联络 | 欢迎投稿 | 广告业务 | 网站地图 | 设为首页 | 加入收藏 | 友情链接 | 网站公告 | 联系我们 | | |||
|