pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/53436: firefox 61.0.1 build failure on NetBSD/i386 8.0_RC2



>Number:         53436
>Category:       pkg
>Synopsis:       firefox 61.0.1 build failure on NetBSD/i386 8.0_RC2
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Jul 09 15:05:00 +0000 2018
>Originator:     Izumi Tsutsui
>Release:        NetBSD 8.0_RC2 + pkgsrc-2018Q2 + firefox 61.0.1 changes
>Organization:
>Environment:
System: NetBSD mirage 8.0_RC2 NetBSD 8.0_RC2 (GENERIC) #0: Mon Jun 25 13:01:26 UTC 2018 mkrepro%mkrepro.NetBSD.org@localhost:/usr/src/sys/arch/i386/compile/GENERIC i386
Architecture: i386
Machine: i386
>Description:
I've tried to build firefox 61.0.1 on NetBSD/i386 8.0_RC2,
but it fails due to "undefined reference to `__stack_chk_fail_local'"
errors:
---
libmozavutil.so
rm -f libmozavutil.so
/s/obj.i386/pkgsrc/www/firefox/work.i386/.cwrapper/bin/gcc -I/usr/pkg/include -I/usr/include -I/usr/pkg/include/nspr -I/usr/pkg/include/nss/nss -I/usr/X11R7/include -I/usr/X11R7/include/libdrm -I/usr/pkg/include/glib/glib-2.0 -I/usr/pkg/include/glib/gio-unix-2.0 -I/usr/pkg/lib/glib-2.0/include -I/usr/pkg/include/ffmpeg3 -I/usr/X11R7/include/freetype2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wall -Wempty-body -Wignored-qualifiers -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wduplicated-cond -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=free-nonheap-object -Wformat -O2 -I/usr/pkg/include/nspr -D_GLIBCXX_INCLUDE_NEXT_C_HEADERS -D_FORTIFY_SOURCE=2 -I/usr/pkg/include -I/usr/include -I/usr/pkg/include/nss/nss -I/usr/X11R7/include -I/usr/X11R7/include/libdrm -I/usr/pkg/include/glib/glib-2.0 -I/usr/pkg/include/glib/gio-unix-2.0 -I/usr/pkg/lib/glib-2.0/include -I/usr/pkg/include/ffmpeg3 -I/usr/X11R7/include/free!
 type2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -Dunix -ffunction-sections -fdata-sections -fno-math-errno -pthread -pipe -I/usr/pkg/include -O2 -fomit-frame-pointer -fPIC -DPIC -shared -Wl,--gc-sections -Wl,-soname,libmozavutil.so -o libmozavutil.so atomic.o avstring.o bprint.o buffer.o channel_layout.o cpu.o crc.o dict.o dummy_funcs.o error.o eval.o fifo.o fixed_dsp.o float_dsp.o frame.o imgutils.o log.o log2_tab.o mathematics.o mem.o opt.o parseutils.o pixdesc.o rational.o reverse.o samplefmt.o slicethread.o time.o utils.o  -lpthread -Wl,-R/usr/pkg/lib/firefox -Wl,-R/usr/pkg/lib -L/usr/pkg/gcc6/lib/gcc/i486--netbsdelf/6.4.0 -Wl,-R/usr/pkg/gcc6/lib/gcc/i486--netbsdelf/6.4.0 -L/usr/pkg/lib -L/usr/lib -Wl,-R/usr/lib -L/usr/pkg/lib/nspr -Wl,-R/usr/pkg/lib/nspr -L/usr/pkg/lib/nss -Wl,-R/usr/pkg/lib/nss -L/usr/X11R7/lib -Wl,-R/usr/X11R7/lib -L/usr/pkg/lib/ffmpeg3 -Wl,-R/usr/pkg/lib/ffmpeg3 -Wl,-z,noexecstack -Wl,-z,text -Wl,-z,relro -Wl,--build-id -Wl,-rpath-l!
 ink,/s/obj.i386/pkgsrc/www/firefox/work.i386/build/dist/bin -W!
 l,-rpath-link,/usr/pkg/lib      -Wl,--version-script,libmozavutil.so.symbols   -lm
avstring.o: In function `av_escape':
avstring.c:(.text.av_escape+0xc6): undefined reference to `__stack_chk_fail_local'
bprint.o: In function `av_bprint_strftime':
bprint.c:(.text.av_bprint_strftime+0x293): undefined reference to `__stack_chk_fail_local'
channel_layout.o: In function `av_get_channel_layout_string':
channel_layout.c:(.text.av_get_channel_layout_string+0x80): undefined reference to `__stack_chk_fail_local'
dict.o: In function `av_dict_set_int':
dict.c:(.text.av_dict_set_int+0x74): undefined reference to `__stack_chk_fail_local'
dict.o: In function `av_dict_get_string':
dict.c:(.text.av_dict_get_string+0x1df): undefined reference to `__stack_chk_fail_local'
log.o:log.c:(.text.av_log_default_callback+0x3d8): more undefined references to `__stack_chk_fail_local' follow
collect2: error: ld returned 1 exit status
/s/obj.i386/pkgsrc/www/firefox/work.i386/firefox-61.0.1/config/rules.mk:679: recipe for target 'libmozavutil.so' failed
gmake[3]: *** [libmozavutil.so] Error 1
gmake[3]: Leaving directory '/s/obj.i386/pkgsrc/www/firefox/work.i386/build/media/ffvpx/libavutil'
/s/obj.i386/pkgsrc/www/firefox/work.i386/firefox-61.0.1/config/recurse.mk:73: recipe for target 'media/ffvpx/libavutil/target' failed
gmake[2]: *** [media/ffvpx/libavutil/target] Error 2
gmake[2]: *** Waiting for unfinished jobs....
---

Note on NetBSD/amd64 8.0_RC2 there is no error during build from
the same sources.

Note gcc6 already has the following change which was necessary
for gcc48:
http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/lang/gcc48/patches/patch-gcc_configure#rev1.4

>How-To-Repeat:
build pkgsrc/www/firefox on NetBSD/i386 8.0_RC2.

>Fix:
No idea.

I wonder if there is an i386 specific -fstack-protector problem,
especially in the following function in gcc-6.4.0/gcc/config/i386/i386.c:

---
/* For 32-bit code we can save PIC register setup by using
   __stack_chk_fail_local hidden function instead of calling
   __stack_chk_fail directly.  64-bit code doesn't need to setup any PIC
   register, so it is better to call __stack_chk_fail directly.  */

static tree ATTRIBUTE_UNUSED
ix86_stack_protect_fail (void)
{
  return TARGET_64BIT
         ? default_external_stack_protect_fail ()
         : default_hidden_stack_protect_fail ();
}
---



Home | Main Index | Thread Index | Old Index