Hello, For VxWorks RTPs, the config/vxworks.h has:
/* For VxWorks, the system provides libc_internal.a. This is a superset of libgcc.a; we want to use it. Make sure not to dynamically export any of its symbols, though. Always look for libgcc.a first so that we get the latest versions of the GNU intrinsics during our builds. */ #undef VXWORKS_LIBGCC_SPEC #define VXWORKS_LIBGCC_SPEC \ "-lgcc %{mrtp:--exclude-libs=libc_internal,libgcc -lc_internal}" This is not quite appropriate for shared RTPs, as there is no shared version of libc_internal. The corresponding entry points are provided by the system libc.so instead. The attached patch is a suggestion to address this by guarding the inclusion with !shared. Tested by verifying that we can produce functional static and dynamic RTPs with the change on VxWorks 6.X. OK to commit ? Thanks in advance for your feedback, Olivier 2014-06-11 Olivier Hainque <hain...@adacore.com> * config/vxworks.h (VXWORKS_LIBGCC_SPEC): Don't link shared RTPs with libc_internal.
vxworks_libc_internal.diff
Description: Binary data