pkgsrc-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: gtk4 fails to build with gcc12
On Wed, Oct 04, 2023 at 10:19:22PM +0200, Rhialto wrote:
> On Mon 02 Oct 2023 at 18:33:13 +0200, Rhialto wrote:
> > On Mon 02 Oct 2023 at 16:19:19 +0200, Benny Siegert wrote:
> > > Is this repeatable? That is, if you just re-do "make", does it fail at
> > > the same place?
> > >
> > > I have seen segfaults from gcc before, typically on flaky hardware.
> > > They do not reappear when rerunning the same command.
> >
> > Yes, it's repeatable. But it's not gcc that fails, but some other
> > command:
> >
> > [823/1781] Generating gtk/Gdk-4.0.gir ... command (wrapped by meson to set env)
> > FAILED: gtk/Gdk-4.0.gir
>
> (the next line was rather long so I omit it here)
>
> If I rerun that command (it runs g-ir-scanner) it outputs
>
> ld: warning: libintl.so.1, needed by /tmp/pkgsrc/x11/gtk4/default/gtk-4.12.1/output/gtk/libgtk-4.so, may conflict with libintl.so.8
> ld: warning: libintl.so.1, needed by /tmp/pkgsrc/x11/gtk4/default/gtk-4.12.1/output/gtk/libgtk-4.so, may conflict with libintl.so.8
> Command '['/tmp/pkgsrc/x11/gtk4/default/gtk-4.12.1/output/tmp-introspectd2c9xgmi/Gdk-4.0', '--introspect-dump=/tmp/pkgsrc/x11/gtk4/default/gtk-4.12.1/output/tmp-introspectd2c9xgmi/functions.txt,/tmp/pkgsrc/x11/gtk4/default/gtk-4.12.1/output/tmp-introspectd2c9xgmi/dump.xml']' died with <Signals.SIGSEGV: 11>.
That long g-ir-scanner command creates a source file and compiles it
into the binary called Gdk-4.0.
Trying to run that binary kills ld.elf_so(!) as it tries to load the
newly compiled libgtk.
Just double checked that all is well with gcc 10.5.0, but not on my
-current/amd64 HAVE_GCC=12 box.
Cheers,
Patrick
Starting program: /tmp/pkgsrc/x11/gtk4/work.x86_64/gtk-4.12.3/output/tmp-introspect20oancyy/Gdk-4.0
Program received signal SIGSEGV, Segmentation fault.
_rtld_call_ifunc (obj=0x7f7ff7ee7400, mask=mask@entry=0x7f7fffffe6f0, cur_objgen=cur_objgen@entry=1)
at /usr/src/libexec/ld.elf_so/reloc.c:311
311 *where = target;
(gdb) bt
#0 _rtld_call_ifunc (obj=0x7f7ff7ee7400, mask=mask@entry=0x7f7fffffe6f0, cur_objgen=cur_objgen@entry=1)
at /usr/src/libexec/ld.elf_so/reloc.c:311
#1 0x00007f7ff7ef3284 in _rtld_call_ifunc_functions (cur_objgen=1, obj=<optimized out>, mask=0x7f7fffffe6f0)
at /usr/src/libexec/ld.elf_so/rtld.c:280
#2 _rtld_call_init_functions (mask=mask@entry=0x7f7fffffe6f0) at /usr/src/libexec/ld.elf_so/rtld.c:304
#3 0x00007f7ff7ef3de5 in _rtld (sp=<optimized out>, relocbase=<optimized out>) at /usr/src/libexec/ld.elf_so/rtld.c:795
#4 0x00007f7ff7eed033 in rtld_start () from /usr/libexec/ld.elf_so
#5 0x0000000000000000 in ?? ()
(gdb) print *obj
$2 = {next = 0x7f7ff7ee7800, path = 0x7f7ff7ee5640 "gtk/libgtk-4.so.1", refcount = 1, dl_refcount = 0,
mapbase = 0x7f7ff774b000 "\177ELF\002\001\001\003", mapsize = 7962624, textsize = 675840, vaddrbase = 0,
relocbase = 0x7f7ff774b000 "\177ELF\002\001\001\003", dynamic = 0x7f7ff7ed2188, entry = 0x0, phdr = 0x7f7ff774b040,
phsize = 504, pltgot = 0x7f7ff7ed2568, rel = 0x0, rellim = 0x0, rela = 0x7f7ff77b5b28, relalim = 0x7f7ff77e2eb8, pltrel = 0x0,
pltrellim = 0x0, pltrela = 0x7f7ff77e2eb8, pltrelalim = 0x7f7ff77efb00, symtab = 0x7f7ff7756568, strtab = 0x7f7ff77817f8 "",
strsize = 198958, buckets = 0x7f7ff774b240, unused1 = 0, chains = 0x7f7ff774f24c, nchains = 7366, rpaths = 0x7f7ff7ee5a60,
needed = 0x7f7ff7ee5660, init = 0x7f7ff77f0000 <_init>, fini = 0x7f7ff7bbb370 <_fini>, mainprog = 0, rtld = 0, textrel = 0,
symbolic = 1, printed = 0, isdynamic = 1, mainref = 1, globalref = 0, init_done = 1, init_called = 0, fini_called = 0,
z_now = 1, z_nodelete = 0, z_initfirst = 0, z_noopen = 0, phdr_loaded = 1, tls_static = 1, tls_dynamic = 0, ref_nodel = 0,
sysv_hash = 1, gnu_hash = 0, linkmap = {l_addr = 0x7f7ff774b000 "\177ELF\002\001\001\003",
l_name = 0x7f7ff7ee5640 "gtk/libgtk-4.so.1", l_ld = 0x7f7ff7ed2188, l_next = 0x7f7ff7ee7908, l_prev = 0x7f7ff7ee7108},
interp = 0x0, dldags = {sqh_first = 0x0, sqh_last = 0x7f7ff7ee7538}, dagmembers = {sqh_first = 0x0, sqh_last = 0x7f7ff7ee7548},
dev = 43777, ino = 82351347333565409, ehdr = 0x7f7ff7ee3000, nbuckets = 4099, nbuckets_m = 4288680445, nbuckets_s1 = 1 '\001',
nbuckets_s2 = 12 '\f', buckets_gnu = 0x0, nbuckets_gnu = 0, nbuckets_m_gnu = 0, nbuckets_s1_gnu = 0 '\000',
nbuckets_s2_gnu = 0 '\000', chains_gnu = 0x0, bloom_gnu = 0x0, symndx_gnu = 0, mask_bm_gnu = 0, shift2_gnu = 0, pathlen = 17,
names = {sqh_first = 0x7f7ff7ee9000, sqh_last = 0x7f7ff7ee9000}, tlsindex = 0, tlsinit = 0x0, tlsinitsize = 0, tlssize = 0,
tlsoffset = 0, tlsalign = 0, relro_page = 0x7f7ff7eb8860, relro_size = 124832, verneed = 0x7f7ff77b5ab8, verneednum = 3,
verdef = 0x0, verdefnum = 0, versyms = 0x7f7ff77b2126, vertab = 0x7f7ff6251000, vertabnum = 6, init_array = 0x7f7ff7eb8860,
init_arraysz = 3, fini_array = 0x0, fini_arraysz = 0, ifunc_remaining = 2, ifunc_remaining_nonplt = 0, cxa_refcount = 0}
Home |
Main Index |
Thread Index |
Old Index