Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 May 2019 13:21:48 -0700
From:      Mark Millard <marklmi@yahoo.com>
To:        FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>, ports-list freebsd <freebsd-ports@freebsd.org>
Cc:        Jan Beich <jbeich@FreeBSD.org>
Subject:   powerpc64 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
Message-ID:  <8B8355C5-731B-4F03-AA98-11324C618D3C@yahoo.com>

next in thread | raw e-mail | index | archive | help
The poudriere bulk run that tried to build x11-toolkits/qt5-declarative
got:

--- qqmljsgrammar.cpp ---
/usr/local/lib/qt5/bin/qlalr --no-debug --qt parser/qqmljs.g
Segmentation fault (core dumped)
*** [qqmljsgrammar.cpp] Error code 139

make[3]: stopped in =
/wrkdirs/usr/ports/x11-toolkits/qt5-declarative/work/qtdeclarative-everywh=
ere-src-5.12.2/src/qml
1 error

Installing qt5-core and manually running under gdb from
an expansion of the bulk's tar of the failure, I was able
to get a backtrace:

(gdb) run --no-debug --qt parser/qqmljs.g
Starting program: /usr/local/bin/qlalr --no-debug --qt parser/qqmljs.g
process 26823 is executing new program: /usr/local/lib/qt5/bin/qlalr
. . . (text about  auto-loading has been declined and such) . . .
Program received signal SIGSEGV, Segmentation fault.
0x0000000810a96be0 in std::type_info::~type_info() () from =
/usr/local/lib/gcc8/libstdc++.so.6
(gdb) bt
#0  0x0000000810a96be0 in std::type_info::~type_info() () from =
/usr/local/lib/gcc8/libstdc++.so.6
#1  0x000000081092152c in __cxxabiv1::__dynamic_cast =
(src_ptr=3D0x810ab57d0 <(anonymous namespace)::ctype_c>, =
src_type=3D0x810a8eaa0 <typeinfo for std::locale::facet>,=20
    dst_type=3D0x810a8fb18 <typeinfo for std::ctype<char>>, src2dst=3D0) =
at =
/wrkdirs/usr/ports/lang/gcc8/work/gcc-8.3.0/libstdc++-v3/libsupc++/dyncast=
.cc:71
#2  0x00000008109df908 in std::has_facet<std::ctype<char> > (__loc=3D...) =
at =
/wrkdirs/usr/ports/lang/gcc8/work/.build/powerpc64-portbld-freebsd13.0/lib=
stdc++-v3/include/bits/locale_classes.tcc:104
#3  0x00000008109cb474 in std::basic_ios<char, std::char_traits<char> =
>::_M_cache_locale (this=3D0x810ab48c8 <std::cout+8>, __loc=3D...)
    at =
/wrkdirs/usr/ports/lang/gcc8/work/.build/powerpc64-portbld-freebsd13.0/lib=
stdc++-v3/include/bits/basic_ios.tcc:157
#4  0x00000008109cbad0 in std::basic_ios<char, std::char_traits<char> =
>::init (this=3D0x810ab48c8 <std::cout+8>, __sb=3D0x810ab36f8 =
<__gnu_internal::buf_cout_sync>)
    at =
/wrkdirs/usr/ports/lang/gcc8/work/.build/powerpc64-portbld-freebsd13.0/lib=
stdc++-v3/include/bits/basic_ios.tcc:126
#5  0x000000081093e644 in std::basic_ostream<char, =
std::char_traits<char> >::basic_ostream (__sb=3D<optimized out>, =
this=3D<optimized out>, __in_chrg=3D<optimized out>, =
__vtt_parm=3D<optimized out>)
    at =
/wrkdirs/usr/ports/lang/gcc8/work/.build/powerpc64-portbld-freebsd13.0/lib=
stdc++-v3/include/bits/basic_ios.h:460
#6  std::ios_base::Init::Init (this=3D<optimized out>) at =
/wrkdirs/usr/ports/lang/gcc8/work/gcc-8.3.0/libstdc++-v3/src/c++98/ios_ini=
t.cc:91
#7  std::ios_base::Init::Init (this=3D<optimized out>) at =
/wrkdirs/usr/ports/lang/gcc8/work/gcc-8.3.0/libstdc++-v3/src/c++98/ios_ini=
t.cc:78
#8  0x000000001000334c in __static_initialization_and_destruction_0 =
(__initialize_p=3D__initialize_p@entry=3D1, __priority=3D<optimized =
out>, __priority@entry=3D65535) at compress.cpp:273
#9  0x0000000010004c2c in _GLOBAL__sub_I_compress.cpp(void) () at =
compress.cpp:273
#10 0x000000081005dfa0 in objlist_call_init (list=3D<optimized out>, =
lockstate=3D<optimized out>) at /usr/src/libexec/rtld-elf/rtld.c:2728
#11 0x000000081005c830 in _rtld (sp=3D<optimized out>, =
exit_proc=3D<optimized out>, objp=3D<optimized out>) at =
/usr/src/libexec/rtld-elf/rtld.c:765
#12 0x000000081005a240 in ._rtld_start () at =
/usr/src/libexec/rtld-elf/powerpc64/rtld_start.S:83
Backtrace stopped: frame did not save the PC



NOTE: In order to have built devel/qt5-core I used a patch
to make sure that all the %%LOCALBASE%% strings were replaced
(otherwise in the powerpc64 system clang 8 based world the
devel/qt5-core build failed from -I%%LOCALBASE%%... use):

Index: /usr/ports/Mk/Uses/qt-dist.mk
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- /usr/ports/Mk/Uses/qt-dist.mk	(revision 501994)
+++ /usr/ports/Mk/Uses/qt-dist.mk	(working copy)
@@ -251,7 +251,7 @@
.if ${_QT_VER:M5}
post-patch: gcc-post-patch
gcc-post-patch:
-	${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|' \
+	${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' \
		${WRKSRC}/mkspecs/common/gcc-base.conf \
		${WRKSRC}/mkspecs/freebsd-g++/qmake.conf
	${REINPLACE_CMD} 's|%%GCC_DEFAULT%%|${GCC_DEFAULT}|g' \
@@ -298,7 +298,7 @@
# ports/194088.
post-patch: qtbase-post-patch
qtbase-post-patch:
-	${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
+	${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' \
		${WRKSRC}/mkspecs/common/bsd/bsd.conf \
		${WRKSRC}/mkspecs/freebsd-clang/qmake.conf


(So having the missing g added but not having the optional -e
usage in the other %%LOCALBASE%% related command. The -e
status is optional here: only one command to sed sed command
in each sed command. The additional g is the important part.)


=3D=3D=3D
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8B8355C5-731B-4F03-AA98-11324C618D3C>