https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=278649

--- Comment #8 from Mark Millard <[email protected]> ---
(In reply to Mark Millard from comment #5)

For a armv7 14.3-STABLE chroot using gcc15:

# uname -apKU
FreeBSD aarch64-main-pbase 16.0-CURRENT FreeBSD 16.0-CURRENT
main-n282703-1e8c2cb328bb GENERIC-NODEBUG arm armv7 1600007 1403507

# gcc15 -static-libgcc main.c
/usr/local/bin/ld: warning: libunwind.o: missing .note.GNU-stack section
implies executable stack
/usr/local/bin/ld: NOTE: This behaviour is deprecated and will be removed in a
future version of the linker

# ./a.out
# 

# ldd -a a.out
a.out:
        libc.so.7 => /lib/libc.so.7 (0x21070000)

On armv7, the issue only happens on 15.0+ (example is
main [so: 16]):

# uname -apKU
FreeBSD aarch64-main-pbase 16.0-CURRENT FreeBSD 16.0-CURRENT
main-n282703-1e8c2cb328bb GENERIC-NODEBUG arm armv7 1600007 1600007

# gcc15 -static-libgcc main.c
/usr/local/bin/ld: warning: libunwind.o: missing .note.GNU-stack section
implies executable stack
/usr/local/bin/ld: NOTE: This behaviour is deprecated and will be removed in a
future version of the linker
/usr/local/bin/ld: a.out: hidden symbol `__aeabi_unwind_cpp_pr0' in
/usr/local/lib/gcc15/gcc/armv7-portbld-freebsd16.0/15.2.0/libgcc_eh.a(unwind-arm.o)
is referenced by DSO
/usr/local/bin/ld: final link failed: bad value
collect2: error: ld returned 1 exit status

(So: no "ldd -a a.out" .)


It is intersting that the context is C but the
hidden symbol has _cpp_ in its name.


Similarly can be done with gcc13.


This is not enough to lay blame but it does strongly suggest
what had changes from the prior status that lead to having
the issue happen: previously the gcc*'s were compatible with
the FreeBSD OS (14.* and before). Something changed in
FreeBSD OS 15.0+ that may lead to both sides (so: gcc too)
needing changes.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Reply via email to