Re: powerpc64 system-clang-8 based context: x11-toolkits/qt5-declarative fails to build in poudriere: /usr/local/lib/qt5/bin/qlalr segmentation faults in std::type_info::~type_info() () from /usr/local/lib/gcc8/libstdc++.so.6
Jason Bacon <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.ppc |
|---|---|
| Message-ID | <[email protected]> |
On 2019-05-28 14:19, Mark Millard via freebsd-ppc wrote:
>> Plus qt5 is outside the range of gcc 4.2.1 to cover, so for it
>> a usable "gcc in base" would mean base/gcc or some such substitution.
>> But base/gcc does not imply any version of libstdc++ is in use either:
>> same problem as system-clang-8-based if something like lang/gcc8 is
>> used for qt5.
>>
>> Even if libstdc++ was (hypothetically) used, the vintage from
>> base/gcc or devel/*-gcc sorts of materials would not generally
>> match lang/gcc8 or whatever compiler:c++11-lib and the like
>> might default to.
>>
>> For the likes of qt5, care must be taken that, for example,
>> devel/icu and its:
>>
>> /usr/local/lib/libicui18n.so.64
>> /usr/local/lib/libicuuc.so.64
>>
>> vs. qt5: they must use the same c++ library and vintage.
>>
>> Then there are things that really could use gcc 4.2.1 from
>> base: mixed libstdc++ vintages could result, even if some
>> port lang/gcc* toolchain is used.
>>
>> Definitely a messy context.
>>
>> The failing behavior (program crash very early when starting)
>> was not obviously tied to c++ library mixes being involved. It
>> would be handy if some stage of building/installing/running
>> caught the presence of such a bad combination and was explicit
>> about it.
> I probably should have mentioned using the likes of
> base/binutils and base/gcc and ending up with a gcc
> based system c and c++ but a system libc++ / libcxxrt
> instead of libstdc++ . This would still make for the
> odd mix of libc++ / libcxxrt vs. libstdc++ if:
>
> /usr/local/lib/libicui18n.so.64
> /usr/local/lib/libicuuc.so.64
>
> were built by the system toolchain but qt5-core was
> built by something like lang/gcc8 .
>
> system-clang vs. lang/gcc* need not be the only odd
> context.
>
>
Has anyone explored using ports gcc for *all* ports (except gcc and
dependencies)?
e.g. in make.conf something like
.if ${PKGBASE} != "gcc8" && ${PKGBASE} != "gmp" && ...
USE_GCC=yes
.endif
I've been using this technique very successfully with pkgsrc on CentOS,
which has basically the same problem with antiquated base compilers
(CentOS 7 is the current maintstream and it uses gcc 4.8).
This eliminates tool chain mixing and only a handful of ports need
patching to work with legacy gcc.
--
Earth is a beta site.
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ppc
To unsubscribe, send any mail to "[email protected]"