we are currently porting a native ANSI C library to NETMF PK4.0.
Access to the library is achieved via a NETMF interop. The interop
code is C++ and uses the C++ string class.
We are able to build and use the interop and native libary in our
NETMF PK emulator project. When we try to build the project for the
target AUG board (ARM architecture) we get several linking errors
like:
Command:
""D:\DATA\mch07790\Programme\Raisonance\Ride\arm-gcc"\bin\arm-none-ea
bi-ld.exe"
…
undefined reference to `std::basic_string<char,
std::char_traits<char>, std::allocator<char>
>::basic_string(std::string const&)'
…
It seems to me that either the ARM build process does not include the
string library or the build process uses the wrong linker
(ld).
Can anyone help? Thank you in advance.
it looks like you are missing the STL library for strings. We do not use
that, so it must have folded in with so other addition. Or maybe tehe
version of GCC you are using requires it.
You might want to try and add it exploiting the following construct
<ExtraLibs Condition="'$(INSTRUCTION_SET)'=='arm'"></ExtraLibs>
in the target file
tools\Targets\Microsoft.Spot.system.gcc.targets
Let us know how it works
Lorenzo