8 years, 4 months ago.

program exported to GCC does not link (due to wrapped missing objects)

I'm using a simple program to blink LED on STM32F103 board (nucleo), It compiles fine within mbed, and runs as expected. But when exported to my local GCC-empbedded, it does not compile(link). I get the following error:

<quote-error> /home/tin/projects/debian/arm-toolchain/collab-maint/newlib/build/arm-none-eabi/armv7-m/newlib/libc/stdio/../../../../../../newlib/libc/stdio/fvwrite.c:157: undefined reference to `_wrap_realloc_r'

/home/tin/projects/debian/arm-toolchain/collab-maint/newlib/build/arm-none-eabi/armv7-m/newlib/libc/stdio/../../../../../../newlib/libc/stdio/fvwrite.c:163: undefined reference to `_wrap_free_r' </quote-error>

I use default debian-jessie package of the arm-gcc cross-compiler-suite:

$ gcc -v

Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.9/lto-wrapper Target: x86_64-linux-gnu Configured with: ../src/configure -v -–with-pkgversion='Debian 4.9.2-10' -–with-bugurl=file:/usr/share/doc/gcc-4.9/README.Bugs -–enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ -–prefix=/usr -–program-suffix=-4.9 -–enable-shared -–enable-linker-build-id -–libexecdir=/usr/lib -–without-included-gettext -–enable-threads=posix -–with-gxx-include-dir=/usr/include/c++/4.9 -–libdir=/usr/lib -–enable-nls -–with-sysroot=/ -–enable-clocale=gnu -–enable-libstdcxx-debug -–enable-libstdcxx-time=yes -–enable-gnu-unique-object -–disable-vtable-verify -–enable-plugin -–with-system-zlib -–disable-browser-plugin -–enable-java-awt=gtk -–enable-gtk-cairo -–with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64/jre -–enable-java-home -–with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64 -–with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.9-amd64 -–with-arch-directory=amd64 -–with-ecj-jar=/usr/share/java/eclipse-ecj.jar -–enable-objc-gc -–enable-multiarch -–with-arch-32=i586 -–-abi=m64 -–with-multilib-list=m32,m64,mx32 -–enable-multilib -–with-tune=generic -–enable-checking=release -–build=x86_64-linux-gnu -–host=x86_64-linux-gnu -–target=x86_64-linux-gnu Thread model: posix gcc version 4.9.2 (Debian 4.9.2-10)

Is this a bug, or I'm missing something?

Be the first to answer this question.