这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » tornado 2.0编译问题请教

共4条 1/1 1 跳转至

tornado 2.0编译问题请教

菜鸟
2003-11-05 23:11:42     打赏
我使用的是tornado 2.0版本,编译时发现如下错误,前面似乎看见有人遇见过这样的问题,据说是2.0编译器对text段64K作了限制,但是我现在找不到更高的版本,请高手指点 ldarm -X -N -X -r -o vxWorks.tmp sysALib.o syslib.o Drv_Tftp.o Drv_xmodem.o Drv_Loadctrl.o Drv _Load.o Drv_Crc.o Drv_State.o Drv_minip.o Drv_Arm7Uart.o Drv_29lv160.o Drv_Arm7T imer.o Drv_Arm7Eth.o Drv_muxlib.o Drv_Arm7Int.o Vpl.o Vpl_bsp.o adler32.o compre ss.o crc32.o deflate.o gzio.o infblock.o infcodes.o inffast.o inflate.o inftrees .o infutil.o trees.o uncompr.o unzip.o zutil.o iad.o usrConfig.o version.o c:Tornado\target/lib/libARM7TDMIgnuvx.a ldarm: vxWorks.tmp: .text: reloc overflow: 0x11241 > 0xffff vxWorks.tmp: final close failed: File truncated make.exe: *** [vxWorks] Error 0x1



关键词: tornado     编译     问题     请教    

菜鸟
2003-11-07 03:09:00     打赏
2楼
谢谢老兄支持 协议栈的函数名冲突问题已经通过下面的批处理解决了 %WIND_BASE%\host\%WIND_HOST_TYPE%\bin\ararm -d libARM7TDMIgnuvx.a if_ether.o ip_input.o if.o in.o uipc_dom.o ifLib.o uipc_mbuf.o inetLib.o sockLib.o if_subr.o if_loop.o ararm.exe是一个可以裁减 .a的工具,对应860下应该是arppc 但是64K的限制还有问题 我修改了C:\Tornado_arm\target\H\make\rules.bsp,增加了一个编译选项-split-by-reloc 65535 变成了下面的样子,bin编出来了,还在测试中,希望能够解决 vxWorks vxWorks.sym : depend.$(BSP_NAME) usrConfig.o dataSegPad.o $(MACH_DEP) $(LDDEPS) $(LIBS) - @ $(RM) vxWorks vxWorks.sym - @ $(RM) version.o - @ $(RM) vxWorks.tmp ctdt.c ctdt.o $(CC) -c $(CFLAGS) -o version.o $(CONFIG_ALL)/version.c $(LD) $(LDFLAGS) $(LD_PARTIAL_FLAGS) -split-by-reloc 65535 -o vxWorks.tmp $(MACH_DEP) usrConfig.o version.o $(LIBS) $(NM) vxWorks.tmp | $(MUNCH) >ctdt.c $(MAKE) CC_COMPILER="-traditional" ctdt.o $(LD) $(LDFLAGS) -e $(SYS_ENTRY) $(LD_LOW_FLAGS) -o vxWorks dataSegPad.o vxWorks.tmp ctdt.o -Map vxWorks.map - @ $(RM) vxWorks.tmp $(LDOUT_HOST) vxWorks $(LDOUT_CONV) vxWorks $(BINXSYM) < vxWorks > vxWorks.sym $(LDOUT_SYMS) vxWorks.sym $(VXSIZEPROG) -v $(RAM_HIGH_ADRS) $(RAM_LOW_ADRS) vxWorks 谢谢老兄! [align=right][color=#000066][此贴子已经被amine于2003-11-7 10:22:11编辑过][/color][/align]

菜鸟
2003-11-08 17:26:00     打赏
3楼
搞定 就是用上面说的方法修改,编译过程由下面的批处理完成 @echo off if TT%WIND_HOST_TYPE% == TT goto environment goto make :environment set WIND_HOST_TYPE=x86-win32 set WIND_BASE=C:\Tornado_arm set PATH=%WIND_BASE%\host\%WIND_HOST_TYPE%\bin;%PATH%;%WIND_BASE%\target\config\S3C4510B; :make rem %WIND_BASE%\host\%WIND_HOST_TYPE%\bin\ararm -d libARM7TDMIgnuvx.a if_ether.o ip_input.o if.o in.o uipc_dom.o ifLib.o uipc_mbuf.o inetLib.o sockLib.o if_subr.o if_loop.o copy makefile.bspr makefile copy libARM7TDMIgnuvx.a %WIND_BASE%\target\lib make.exe -f makefile vxWorks del makefile echo deleted makefile!!! coffArmToBin vxWorks.bin zip vxWorks.bin vxWorks.zip

菜鸟
2003-11-11 20:20:00     打赏
4楼
我没有遇到这么多问题,我对编译的理解很浅,可能不能提供什么有效的帮助 你所讲的两个问题我都没有遇到 命令coffArmToBin vxWorks.bin没有任何附加参数,如果对他生成的大小有疑义可以看一下map或反汇编一下看看函数是不是齐了

共4条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]