[Buildroot] [PATCH] package/qt5/qt5webengine: don't link with libstdc++.a on the host
romain.naour at gmail.com
Wed May 27 05:19:23 UTC 2020
Le 26/05/2020 à 23:13, Peter Seiderer a écrit :
> Hello Romain,
> On Tue, 26 May 2020 23:02:14 +0200, Romain Naour <romain.naour at gmail.com> wrote:
>> Hi Peter,
>> Le 24/05/2020 à 17:58, Romain Naour a écrit :
>>> While cross-compiling, qt5webengine is building a host tool but
>>> want to link the libstdc++ statically. This requires to install
>>> libstdc++-static package on the host (Fedora package name).
>>> Otherwise the link fail with:
>>> [185/185] LINK gn
>>> FAILED: gn
>>> /usr/bin/g++ -O3 -fdata-sections -ffunction-sections -Wl,--gc-sections -Wl,-strip-all -Wl,--as-needed -static-libstdc++ -pthread -o gn -Wl,--start-group tools/gn/gn_main.o base.a gn_lib.a -Wl,--end-group -ldl
>>> /usr/bin/ld : unable to find -lstdc++
>>> Project ERROR: GN build error!
>>> Add --no-static-libstdc++ argument to gn.pro to link to
>>> libstdc++.so.6 instead of libstdc++.a.
>>> --no-static-libstdc++ has been added by  but it force
>>> linking statically by default.
>>>  https://github.com/qt/qtwebengine-chromium/commit/cfab9198a9917f42cf08b1caf84ab9b71aac1911#diff-905c8f054808213577c0a92d1b704615
>> Did you noticed this issue while building for qt5declarative issue?
>> On my pc, the static glibc wasn't installed.
> I think the problem is qt5webengine specific as it is the only package compiling
> a host build tool GN....
> Never observed the problem with qt5webengine, maybe because on OpenSUSE there is
> a static libstdc++ provided with the 'normal' libstdc++ devel package, eg.
> $ rpm -qf /usr/lib64/gcc/x86_64-suse-linux/9/libstdc++.a
I'm using Fedora, and the packaging between Linux distros can be quite
different. See for example, perl packaging in Debian (all in one) and the perl
packaging in Fedora (several dozen of packages).
For the libstdc++, the libstdc++-devel package doesn't provide the static
library. I have to install libstdc++-static package for that.
More information about the buildroot