感谢yaopg高手的指点和完整代码的提供,按照您的使用说明现在我的FTP工作已经能够象正常的WINDOWS下那样了,但是我还想请教您两个问题,请指导
1、加上您的FTP代码后我的VxWorks映像变的有点大使得我的FLASH上不能装下因此导致FLASH启动不能用,我想问一下您可以通过什么方式减小映像大小吗?我找了找感觉好象没有可以exclude的东西啊
2、在论坛上我看到了相关帖子这样修改,说是修改FTP库,其实我感觉只是让其FTP功能更加完善,我按以下步骤试着修改(因为这样不会让我的映像文件很大):
BSP中makefile中有以下语句:
CPU = ARMARCH4(猜测应该是要修改这个CPU的libnet.a)
TOOL = gnu
修改过程如下(ftpdLib.o的生成是在一个没有包含FTP_SERVER的工程里边编译生成的,这样可以吗?):
E:\Tornado2.2\host\x86-win32\bin>ararm -d E:\Tornado2.2\target\lib\arm\ARMARCH4\common\libnet.a ftpdLib.o
E:\Tornado2.2\host\x86-win32\bin>ararm -r E:\Tornado2.2\target\lib\arm\ARMARCH4\
common\libnet.a E:\Tornado2.2\target\lib\arm\ARMARCH4\common\ftpdLib.o
但在修改完后基于此BSP建工程,生成bootrom没有出错,在 make "vxworks"时出错如下:
ldarm -X -EL -N -e sysInit -Ttext 00006000 \
dataSegPad.o partialImage.o ctdt.o symTbl.o \
-T E:\Tornado2.2\target\h\tool\gnu\ldscripts\link.RAM -o vxWorks
\cygdrive\e\Tornado2.2\host\x86-win32\bin\ldarm: partialImage.o(ftpdInit): warning: interw
orking not enabled.
\cygdrive\e\Tornado2.2\host\x86-win32\bin\ldarm: first occurrence: partialImage.o: arm c
all to thumb
\cygdrive\e\Tornado2.2\host\x86-win32\bin\ldarm: partialImage.o(open): warning: interworki
ng not enabled.
\cygdrive\e\Tornado2.2\host\x86-win32\bin\ldarm: first occurrence: partialImage.o: thumb
call to arm
\cygdrive\e\Tornado2.2\host\x86-win32\bin\ldarm: Dwarf Error: Could not find abbrev number
66.
partialImage.o: In function `ftpMkdir':
partialImage.o(.text+0x488e4): internal error: dangerous error
\cygdrive\e\Tornado2.2\host\x86-win32\bin\ldarm: final link failed: Bad value
make: *** [vxWorks] Error 0x1
Done.
我对FTP的功能函数了解甚少,请您帮忙指导!谢谢了!
我用的代码是论坛里下载的 http://blog.21ic.com/user1/3162/index.html
[align=right][color=#000066][此贴子已经被作者于2007-4-24 17:25:35编辑过][/color][/align]