canadian cross host mingw: build of liblto_plugin-0.dll fails

Titus von Boxberg <[email protected]>
Newsgroups gmane.comp.gcc.cross-compiling
Message-ID <[email protected]>
Alexey, all,

on opensuse linux, I'm trying to build an arm-none toolchain for host mingw-w64
with a fairly recent crosstool-NG.
As the build machine compiler I'm using gcc-7.2 from opensuse package
https://build.opensuse.org/package/show/windows%3Amingw%3Awin64/mingw64-cross-gcc

Everything is going smooth except that in the build step for the final gcc
libtool refuses to generate the liblto_plugin-0.dll

The command line is:
./libtool --tag=CC --tag=disable-static  --mode=link x86_64-host_w64-mingw32-gcc -Wall -O2 -g -pipe -I/home/ELBE/titus/tmp/m32-ctng-m7/.build/HOST-x86_64-w64-mingw32/arm-m7-eabi/buildtools/complibs-host/include -Os -D__USE_MINGW_ACCESS -Wc,-static-libgcc -no-undefined -bindir "/opt/cross/arm-m7-eabi/bin" -module -bindir /opt/cross/arm-m7-eabi/libexec/gcc/arm-m7-eabi/7.2.0  -Wc,../libiberty/libiberty.a  -Xcompiler '-static-libstdc++' -Xcompiler '-static-libgcc' '-L/home/ELBE/titus/tmp/m32-ctng-m7/.build/HOST-x86_64-w64-mingw32/arm-m7-eabi/buildtools/complibs-host/lib' '-lstdc++' '-lm' '-Wl,--stack,12582912' -o liblto_plugin.la -rpath /opt/cross/arm-m7-eabi/libexec/gcc/arm-m7-eabi/7.2.0 lto-plugin.lo

The message is:
*** Warning: linker path does not have real file for library -lstdc++.
*** I have the capability to make that library automatically link in when
*** you link to this library.  But I can only do this if you have a
*** shared version of the library, which you do not appear to have
*** because I did check the linker path looking for a file starting
*** with libstdc++ but no candidates were found. (...for file magic test)

*** Warning: libtool could not satisfy all declared inter-library
*** dependencies of module liblto_plugin.  Therefore, libtool will create
*** a static module, that should work as long as the dlopening
*** application is linked with the -dlopen flag.

libtool is looking into these paths:
/home/ELBE/titus/tmp/m32-ctng-m7/.build/HOST-x86_64-w64-mingw32/arm-m7-eabi/buildtools/complibs-host/lib
/usr/x86_64-w64-mingw32/lib
/usr/x86_64-w64-mingw32/sys-root/mingw/lib

I found that the opensuse c++ runtime package installs libstdc++-6.dll
into the bin directory of the sysroot
/usr/x86_64-w64-mingw32/sys-root/mingw/bin

When manually copying libstdc++-6.dll into the sysroot's lib directory, libtool is happy.

Any ideas where to look to get this fixed reliably?

Thanks already!
Regards,
Titus
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.