Reputation: 11
I try to create application for VxWorks which will simply take file using tftp. But linker doesn't know what tftpInit() function is. These are errores example:
dld: warning: Undefined symbol 'tftpPeerSet' in file 'lava-test/NonDebug/Objects/lava-test/lava-tests.o'
dld: warning: Undefined symbol 'tftpModeSet' in file 'lava-test/NonDebug/Objects/lava-test/lava-tests.o'
dld: warning: Undefined symbol 'tftpInit' in file 'lava-test/NonDebug/Objects/lava-test/lava-tests.o'
dld: warning: Undefined symbol 'tftpGet' in file 'lava-test/NonDebug/Objects/lava-test/lava-tests.o'
dld: warning: Undefined symbol 'tftpQuit' in file 'lava-test/NonDebug/Objects/lava-test/lava-tests.o'
After including vxcoreip
library (where tftpInit should be implemented) I've gotten next linker errors:
dld: warning: Undefined symbol '__ctype' in file 'inetAddrLib.o(C:/WindRiver/vxworks-6.9/target/lib/arm/ARMARCH7/common\libvxcoreip.a)'
dld: warning: Undefined symbol 'iosDrvInstall' in file 'sockLib.o(C:/WindRiver/vxworks-6.9/target/lib/arm/ARMARCH7/common\libvxcoreip.a)'
dld: warning: Undefined symbol 'iosFdDrvValue' in file 'sockLib.o(C:/WindRiver/vxworks-6.9/target/lib/arm/ARMARCH7/common\libvxcoreip.a)'
dld: warning: Undefined symbol 'iosMaxFiles' in file 'sockLib.o(C:/WindRiver/vxworks-6.9/target/lib/arm/ARMARCH7/common\libvxcoreip.a)'
dld: warning: Undefined symbol 'iosFdNew' in file 'sockLib.o(C:/WindRiver/vxworks-6.9/target/lib/arm/ARMARCH7/common\libvxcoreip.a)'
Please, suggest how to link tftpLib. What libraries are needed?
P.S. Project type - RTP (VxWorks 6.9). Dev environment - Workbench 3.3
Upvotes: 1
Views: 760
Reputation: 31
Make sure your "vxworks image project" has TFTP client components included.
vxprj component list | grep TFTP
And add any missing ones:
vxprj component add INCLUDE_TFTP_CLIENT
vxprj component add INCLUDE_IPTFTPC
vxprj component add INCLUDE_IPTFTP_CLIENT_COMMAND
Upvotes: 0