Jo Luxer
Jo Luxer

Reputation: 141

libstdc++ for cross gcc with multilib support placed in wrong directory

I managed to build a cross gcc-7.2.0 with multilib support for several Cortex-M-Targets with and without hard and soft floating point according to the processor capabilities.

Now, after final install step (make install), I find only one libstc++.a in the installation directory. For the other C++ libraries I see the same problem.

I expected one in every multilib subdirectory, the same way as I can find libc, libm and the like. But there are no libstdc++.a in the multilib subdirectories.

I think, this is not right.

Linking my test project failes with

libstdc++.a(atexit_arm.o) uses VFP register arguments, ../target.elf does not.

This suggests problems with the multilib installation.

How can I fix this multilib problem in the build phase?

Upvotes: 1

Views: 267

Answers (1)

Jo Luxer
Jo Luxer

Reputation: 141

After I added some configuration options to the configure call of binutils and GCC, the multilib configuration is working like a charm now.

For binutils I added --enable-version-specific-runtime-libs.

For GCC I added --enable-multiarch --enable-version-specific-runtime-libs.

Don't know, if the multiarch option is really necessary for my problem, but I didn't investigate further and I leave the information here.

Upvotes: 1

Related Questions