Important changes to forums and questions
All forums and questions are now archived. To start a new conversation or read the latest updates go to forums.mbed.com.
10 years, 4 months ago.
issues with porting to uVision4
Hello!
I am having issues with porting programs to the uVision4 IDE.
I tried to build the USBMouse_HelloWorld demo application, and have gotten the following errors when linking:
USBMouse_HelloWorld Build Errors
Build target 'mbed NXP LPC11U24' compiling main.cpp... compiling USBMouse.cpp... compiling USBHID.cpp... compiling USBMouseKeyboard.cpp... compiling USBKeyboard.cpp... compiling USBHAL_KL25Z.cpp... compiling USBDevice.cpp... compiling USBHAL_LPC17.cpp... compiling USBHAL_LPC11U.cpp... compiling USBAudio.cpp... compiling USBSerial.cpp... compiling USBCDC.cpp... compiling USBMSD.cpp... compiling USBMIDI.cpp... linking... .\build\USBMouse_HelloWorld.axf: Error: L6200E: Symbol remove multiply defined (by iostubs.o and stdio.o). .\build\USBMouse_HelloWorld.axf: Error: L6200E: Symbol rename multiply defined (by iostubs.o and stdio.o). .\build\USBMouse_HelloWorld.axf: Error: L6200E: Symbol tmpfile multiply defined (by iostubs.o and stdio.o). .\build\USBMouse_HelloWorld.axf: Error: L6200E: Symbol tmpnam multiply defined (by iostubs.o and stdio.o). Target not created
I have found the stdio.h file and tried just commenting out the listed functions, which proved to be less than effective, and I cannot find the iostubs.h file anywhere in the project. Where do I go from here?
Edit: I would also like to note i get a similar issue, but slightly different, with the mbed_blinky program
mbed_blinky Build Errors
Build target 'mbed NXP LPC11U24' compiling main.cpp... linking... .\build\mbed_blinky.axf: Error: L6200E: Symbol remove multiply defined (by iostubs.o and retarget.o). .\build\mbed_blinky.axf: Error: L6200E: Symbol rename multiply defined (by iostubs.o and retarget.o). .\build\mbed_blinky.axf: Error: L6200E: Symbol tmpfile multiply defined (by iostubs.o and retarget.o). .\build\mbed_blinky.axf: Error: L6200E: Symbol tmpnam multiply defined (by iostubs.o and retarget.o). Target not created
For this, I cannot find ether the retarget.h OR the iostubs.h files, so I'm really not sure what is going on here....
- Terryn
3 Answers
10 years, 4 months ago.
The exporters don't seem to be backwards compatible with older versions of the mbed library. There are multiple instances of duplicate objects. You can update the mbed lib to the latest version and then export. That will be much easier than decoding/removing the extra paths and duplicate objects
9 years, 9 months ago.
My platform is ST Nucleo F103RB, and i got the same errors. I‘ve fixed it by referring to the following article. “使用MDK编译RT-Thread(LUA与DFS组件都打开)时的出现符号重复定义的问题的研究与解决http://www.douban.com/note/248445068/” The most easiest way is do not use the microlib, but it may increase your program size.Here is the introduction of microlib: http://www.keil.com/arm/microlib.asp
Hi Terryn Fredrickson,
what version of the mbed lib does your app use?
Regards,
posted by Martin Kojtal 08 Jul 20140xc0170
@0xc0170
I tried using the most up to date mbed and usbmouse/usb device libs (updated 12 and 26 days ago respectively)
posted by Terryn Fredrickson 14 Jul 2014