Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 633640 - www-client/firefox-52.4.0 fails to compile with ld: libxul.so: hidden symbol `_....` isn't defined
Summary: www-client/firefox-52.4.0 fails to compile with ld: libxul.so: hidden symbol ...
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal with 1 vote (vote)
Assignee: Mozilla Gentoo Team
URL:
Whiteboard:
Keywords:
: 634006 641478 641856 647104 (view as bug list)
Depends on:
Blocks:
 
Reported: 2017-10-06 17:27 UTC by dE
Modified: 2019-03-31 20:06 UTC (History)
8 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Failed build log for Firefox. (build.log.xz,234.45 KB, application/x-xz)
2017-10-06 17:27 UTC, dE
Details

Note You need to log in before you can comment on or make changes to this bug.
Description dE 2017-10-06 17:27:08 UTC
Created attachment 497914 [details]
Failed build log for Firefox.

Attaching build log.

Firefox was compiled with -march=native -O3 -pipe -fomit-frame-pointer, bfd linker was used for the compilation and ccache was disabled.

Portage 2.3.6 (python 2.7.12-final-0, default/linux/amd64/13.0/desktop/plasma/systemd, gcc-6.4.0, glibc-2.23-r4, 4.9.39-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.9.39-gentoo-x86_64-Intel-R-_Core-TM-_i3-2120_CPU_@_3.30GHz-with-gentoo-2.4.1
KiB Mem:    16362060 total,   7946412 free
KiB Swap:   18874364 total,  18874364 free
Timestamp of repository gentoo: Mon, 02 Oct 2017 00:45:01 +0000
sh bash 4.3_p48-r1
ld GNU gold (Gentoo 2.28.1 p1.0 2.28.1) 1.14
ccache version 3.2.4 [enabled]
app-shells/bash:          4.3_p48-r1::gentoo
dev-java/java-config:     2.2.0-r3::gentoo
dev-lang/perl:            5.24.1-r2::gentoo
dev-lang/python:          2.7.12::gentoo, 3.4.5::gentoo
dev-util/ccache:          3.2.4::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.4.1-r2::gentoo
sys-apps/openrc:          0.28::gentoo
sys-apps/sandbox:         2.10-r3::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo
sys-devel/automake:       1.15-r2::gentoo
sys-devel/binutils:       2.28.1::gentoo
sys-devel/gcc:            6.4.0::gentoo
sys-devel/gcc-config:     1.7.3::gentoo
sys-devel/libtool:        2.4.6-r3::gentoo
sys-devel/make:           4.2.1::gentoo
sys-kernel/linux-headers: 4.9::gentoo (virtual/os-headers)
sys-libs/glibc:           2.23-r4::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000

my-tree
    location: /home/de/dev-tree
    masters: gentoo
    priority: 0

mysql
    location: /var/lib/layman/mysql
    masters: gentoo
    priority: 50

posativ
    location: /var/lib/layman/posativ
    masters: gentoo
    priority: 50

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -fomit-frame-pointer -floop-interchange -floop-strip-mine -floop-block -fgraphite-identity -ftree-loop-distribution -O3 -pipe -flto=4 -fuse-linker-plugin -ffat-lto-objects"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.0/ext-active/ /etc/php/cgi-php7.0/ext-active/ /etc/php/cli-php7.0/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=native -fomit-frame-pointer -floop-interchange -floop-strip-mine -floop-block -fgraphite-identity -ftree-loop-distribution -O3 -pipe -flto=4 -fuse-linker-plugin -ffat-lto-objects"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps=n --complete-graph --binpkg-respect-use=y --binpkg-changed-deps=n --changed-deps=n"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs binpkg-multi-instance candy ccache config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://mirror.csclub.uwaterloo.ca/gentoo-distfiles/"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/tmp"
USE="X a52 a53 aac aalib acc acpi adns aio alsa amd64 amr atm audiofile bash-completion branding bzip2 c++0x cdda cdr cli cracklib css custom-cflags custom-optimization dbx declarative dga dirac dri dri3 dts dv dvd dvdr emboss encode enscript exif faad ffmpeg firefox flac fortran gdu gif glamor glut gmp gsm gstreamer gzip http2 iconv imlib ipc jemalloc jit jpeg jpeg2k kde ladspa lame libedit libnotify libsamplerate libwww lzma lzo mad matroska matrox mikmod mime minimal mmap mmx mng modules mozilla mp3 mp4 mpeg mplayer mudflap multilib musepack networkmanager nntp nocd nptl nptlonly nsplugin offensive ogg openal openexr opengl openmp optimization orc osc pam pango pdf pgo phonon pie plasma png policykit posix ppds pppd qml qt5 quicktime raw readline schroedinger sharedmem shorten smp sndfile sockets socks5 speex spell sse sse2 sse3 sse4 sse4_1 sse4_2 ssse3 startup-notification strong-optimization svg symlink sysfs systemd taglib tcmalloc theora threads tiff toolame truetype twolame udev udisks unicode unixd upower usb vaapi vcd vhosts vorbis wavpack widgets win32codecs wmf wxwidgets x264 x265 xcb xcomposite xine xinerama xml xorg xpm xv xvid zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="unixd authn_core authz_core authz_host access_compat alias auth_basic authn_file log_config mime log_config proxy proxy_http rewrite proxy_balancer lbmethod_bybusyness lbmethod_byrequests lbmethod_bytraffic lbmethod_heartbeat slotmem_shm env cache dir cgid headers" APACHE2_MPMS="event" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="ssse3 sse3 sse4_1 sse4_2 mmx sse avx mmx sse2" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="pc" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="nlpsolver pdfimport" NGINX_MODULES_HTTP="access fastcgi gzip gzip_static limit_req rewrite upstream_check" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_4" PYTHON_TARGETS="python2_7 python3_4" QEMU_SOFTMMU_TARGETS="x86_64" RUBY_TARGETS="ruby22" USERLAND="GNU" VIDEO_CARDS="intel i965 i915" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

www-client/firefox-52.2.0::gentoo was built with the following:
USE="custom-cflags custom-optimization dbus gmp-autoupdate hwaccel jemalloc startup-notification system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-sqlite -bindist -debug -gtk2 -hardened -jack (-neon) -pgo -pulseaudio (-rust) -selinux (-system-cairo) -test -wifi" ABI_X86="(64)" L10N="-ach -af -an -ar -as -ast -az -bg -bn-BD -bn-IN -br -bs -ca -cak -cs -cy -da -de -dsb -el -en-GB -en-ZA -eo -es-AR -es-CL -es-ES -es-MX -et -eu -fa -ff -fi -fr -fy -ga -gd -gl -gn -gu -he -hi -hr -hsb -hu -hy -id -is -it -ja -ka -kab -kk -km -kn -ko -lij -lt -lv -mai -mk -ml -mr -ms -nb -nl -nn -or -pa -pl -pt-BR -pt-PT -rm -ro -ru -si -sk -sl -son -sq -sr -sv -ta -te -th -tr -uk -uz -vi -xh -zh-CN -zh-TW"
CFLAGS="-march=native -pipe -fomit-frame-pointer"
CXXFLAGS="-march=native -pipe -fomit-frame-pointer -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-rpath=/usr/lib64/firefox,--enable-new-dtags"
Comment 1 Ian Stakenvicius (RETIRED) gentoo-dev 2017-10-06 17:45:23 UTC
Could you do an 'emerge --info' with the settings you actually used to build firefox?  This one's got significantly more CFLAGS and is showing gold as your LD...
Comment 2 Jory A. Pratt gentoo-dev 2017-10-06 23:54:49 UTC
This is a pgo build failure nothing to do with gcc-6.4, A simple patch is all that is needed that has not been included in gentoo. This is already landed in 57 branch and is actually a dupe of bug 617690, I am not interested in backporting the pgo fix for firefox-esr, the patch will apply cleanly and can be applied by the users.

*** This bug has been marked as a duplicate of bug 617690 ***
Comment 3 dE 2017-10-07 03:34:25 UTC
Oh, didn't notice the pgo flag.

https://bugs.gentoo.org/show_bug.cgi?id=627140

Sorry.
Comment 4 Jory A. Pratt gentoo-dev 2017-10-07 21:23:43 UTC
I went ahead and committed a new patchset that includes the fix. This will just make for less noise.
Comment 5 Jory A. Pratt gentoo-dev 2017-10-09 12:56:04 UTC
Will need to re-address the patch. In tree has been reverted due to breakage it introduced.
Comment 6 tt_1 2017-10-11 11:45:57 UTC
Please ping on this bug if you need compile or runtime testing.
Comment 7 pavel sanda 2017-10-11 16:17:22 UTC
Hello, I had related bug triggered on gcc 4.9.4:

In file included from /var/tmp/portage/www-client/firefox-52.4.0/work/firefox-52.4.0esr/ff/gfx/thebes/Unified_cpp_gfx_thebes0.cpp:65:0:
/var/tmp/portage/www-client/firefox-52.4.0/work/firefox-52.4.0esr/gfx/thebes/gfxFont.cpp:2625:29: error: 'mozilla::gfx::ShapedTextFlags' has not been declared
                        gfx::ShapedTextFlags aFlags,
                             ^
/var/tmp/portage/www-client/firefox-52.4.0/work/firefox-52.4.0esr/gfx/thebes/gfxFont.cpp:2626:24: error: 'RoundingFlags' has not been declared
                        RoundingFlags aRounding,
                        ^
/var/tmp/portage/www-client/firefox-52.4.0/work/firefox-52.4.0esr/gfx/thebes/gfxFont.cpp:2618:1: error: template-id 'GetShapedWord<>' for 'gfxShapedWord* gfxFont::GetShapedWord(gfxFont::DrawTarget*, const uint8_t*, uint32_t, uint32_t, gfxFont::Script, bool, int32_t, int, int, gfxTextPerfMetrics*)' does not match any template declaration
 gfxFont::GetShapedWord(DrawTarget *aDrawTarget,
 ^


Reverting this patch:
https://hg.mozilla.org/mozilla-central/rev/97dae871389b
solved the issue for firefox-52.4.0 & gcc 4.9.4 in my case.
Comment 8 Tomasz Golinski 2017-10-11 20:08:20 UTC
I also had the problem with gfx::ShapedTextFlags aFlags but resolved it by disabling system-* use-flags.
Comment 9 Jory A. Pratt gentoo-dev 2017-10-12 12:57:01 UTC
*** Bug 634006 has been marked as a duplicate of this bug. ***
Comment 10 Hadrien Lacour 2017-12-14 23:47:42 UTC
Hello, getting the same errors (undefined reference to `gfxShapedWord* gfxFont::GetShapedWord and libxul.so: hidden symbol) with firefox-52.5.2 and gcc-6.4.0 with ld.gold.
Comment 11 Jory A. Pratt gentoo-dev 2017-12-15 13:44:54 UTC
(In reply to Hadrien Lacour from comment #10)
> Hello, getting the same errors (undefined reference to `gfxShapedWord*
> gfxFont::GetShapedWord and libxul.so: hidden symbol) with firefox-52.5.2 and
> gcc-6.4.0 with ld.gold.

We are not gonna fix pgo support, we have drop'd it from firefox 58 and will leave it removed in next esr which will be 59.
Comment 12 Hadrien Lacour 2017-12-16 10:58:49 UTC
(In reply to Jory A. Pratt from comment #11)
> We are not gonna fix pgo support, we have drop'd it from firefox 58 and will
> leave it removed in next esr which will be 59.
Sorry, looks like I didn't read the thread carefully enough.
Comment 13 Jory A. Pratt gentoo-dev 2017-12-18 13:44:00 UTC
*** Bug 641478 has been marked as a duplicate of this bug. ***
Comment 14 Jory A. Pratt gentoo-dev 2017-12-22 19:58:49 UTC
*** Bug 641856 has been marked as a duplicate of this bug. ***
Comment 15 Jeroen Roovers (RETIRED) gentoo-dev 2018-02-10 13:24:56 UTC
*** Bug 647104 has been marked as a duplicate of this bug. ***
Comment 16 Jory A. Pratt gentoo-dev 2019-03-31 20:06:13 UTC
Please feel free to reopen and update any bug report that can be duplicated with current esr builds, 60.x. If you feel your feature needs to be re looked at in any of these bugs reopen and update, please attach patches when appropriate. Thank you Mozilla Team