Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
firefox 71.0 segfault on gcc, clang switch [solved]
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo
View previous topic :: View next topic  
Author Message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3638

PostPosted: Tue Dec 03, 2019 9:18 am    Post subject: firefox 71.0 segfault on gcc, clang switch [solved] Reply with quote

Code:
Installed versions:  71.0^td(08:35:02 03/12/2019)(custom-cflags jack lto pgo startup-notification system-av1 system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-sqlite system-webp wayland -bindist -clang -custom-optimization -debug -eme-free -geckodriver -gmp-autoupdate -hardened -hwaccel -pulseaudio -screenshot -selinux -test -wifi CPU_FLAGS_ARM="-neon" CPU_FLAGS_X86="avx2" L10N="fr -ach -af -an -ar -ast -az -be -bg -bn -br -bs -ca -cak -cs -cy -da -de -dsb -el -en-CA -en-GB -eo -es-AR -es-CL -es-ES -es-MX -et -eu -fa -ff -fi -fy -ga -gd -gl -gn -gu -he -hi -hr -hsb -hu -hy -ia -id -is -it -ja -ka -kab -kk -km -kn -ko -lij -lt -lv -mk -mr -ms -my -nb -nl -nn -oc -pa -pl -pt-BR -pt-PT -rm -ro -ru -si -sk -sl -son -sq -sr -sv -ta -te -th -tr -uk -ur -uz -vi -xh -zh-CN -zh-TW")
currently falling back 2 more orthodox USE flags cancelling custom-cflags gmp-autoupdate lto pgo USE flags.
My advice: BACKUP your working firefox as binary package before upgrade achievement.
Code:
quickpkg --include-config y <ebuild-name>

I always wished portage to be able to backup current installed package as binary via a on-the-fly activated feature of some sort,; unfortunately it doesn't.

Thks 4 ur attention.

EDIT:
Code:
CPU_FLAGS_ARM="-neon"
seems suspiscious.

Last edited by CaptainBlood on Wed Dec 04, 2019 6:17 pm; edited 4 times in total
Back to top
View user's profile Send private message
Ionen
Developer
Developer


Joined: 06 Dec 2018
Posts: 2727

PostPosted: Tue Dec 03, 2019 9:39 am    Post subject: Reply with quote

71+lto+pgo+usual flags working fine for me but I'm using clang for firefox since it's what they primarily use upstream and test with (gcc support is more like an afterthought at this point), generally I'd recommend people to do the same unless they really want to avoid clang on their system.

Although if a combination of USE flags is known to be broken, it's also gentoo's problem.
Edit update: which is now fixed for 71.0 in gentoo (gcc+lto+pgo should work again)


Last edited by Ionen on Tue Dec 10, 2019 12:53 pm; edited 1 time in total
Back to top
View user's profile Send private message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3638

PostPosted: Tue Dec 03, 2019 9:50 am    Post subject: Reply with quote

will give clang USE flag a chance one currentl ebuilding finishes.
BTW do you have custome-cflags activated?

Thks 4 ur attention, interest & support.
Back to top
View user's profile Send private message
Ionen
Developer
Developer


Joined: 06 Dec 2018
Posts: 2727

PostPosted: Tue Dec 03, 2019 10:05 am    Post subject: Reply with quote

Well, ""technically"" I do, but I'm more aggressive and preventing flag stripping from working in the first place system-wide (at my own risks). That aside, gcc tend to be a lot more pedantic with some aggressive optimization and firefox doesn't always give proper compiler hints which can lead to this kind of segfaulty or unexpected behavior situation.

I also have RUSTFLAGS="-Ctarget-cpu=native -Copt-level=2" which I believe/hope helps a bit performance-wise, not that I'm overly familiar with rust optimizations.
Back to top
View user's profile Send private message
grumblebear
Apprentice
Apprentice


Joined: 26 Feb 2008
Posts: 202

PostPosted: Tue Dec 03, 2019 10:29 am    Post subject: Re: iirefox 71.0 segfault Reply with quote

CaptainBlood wrote:
I always wished portage to be able to backup current installed package as binary via a on-the-fly activated feature of some sort,; unfortunately it doesn't.

Hmm,
seems you never heard of the FEATURES variable in make.conf. There is a feature named "buildpkg".
Back to top
View user's profile Send private message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3638

PostPosted: Tue Dec 03, 2019 10:46 am    Post subject: Reply with quote

AFAIR this feature build a bin package of the currently building package, it doesn"t currentl y backup currently installed one.
Will double chack, as I may have misunderstood the feature in the first plcce.
Code:
-buildpkg [ y | n ], -b
    Tells emerge to build binary packages for all ebuilds processed in addition to actually merging the packages. Useful for maintainers or if you administrate multiple Gentoo Linux systems (build once, emerge tbz2s everywhere) as well as disaster recovery. The package will be created in the PKGDIR directory (see make.conf(5)). An alternative for already-merged packages is to use quickpkg(1) which creates a tbz2 from the live filesystem.
Thks 4 ur attention, interest & support.
Back to top
View user's profile Send private message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3638

PostPosted: Tue Dec 03, 2019 11:03 am    Post subject: Reply with quote

Code:
Installed versions:  71.0^td(13:52:51 03/12/2019)(jack startup-notification system-av1 system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-sqlite system-webp wayland -bindist -clang -custom-cflags -custom-optimization -debug -eme-free -geckodriver -gmp-autoupdate -hardened -hwaccel -lto -pgo -pulseaudio -screenshot -selinux -test -wifi CPU_FLAGS_ARM="-neon" CPU_FLAGS_X86="avx2" L10N="fr -ach -af -an -ar -ast -az -be -bg -bn -br -bs -ca -cak -cs -cy -da -de -dsb -el -en-CA -en-GB -eo -es-AR -es-CL -es-ES -es-MX -et -eu -fa -ff -fi -fy -ga -gd -gl -gn -gu -he -hi -hr -hsb -hu -hy -ia -id -is -it -ja -ka -kab -kk -km -kn -ko -lij -lt -lv -mk -mr -ms -my -nb -nl -nn -oc -pa -pl -pt-BR -pt-PT -rm -ro -ru -si -sk -sl -son -sq -sr -sv -ta -te -th -tr -uk -ur -uz -vi -xh -zh-CN -zh-TW")
worked, plz note -gmp-autoupdate cancelation config failed :lol:.
Will soon try lto + pgo.
Thks 4 ur attention, interest & support.
Back to top
View user's profile Send private message
Ionen
Developer
Developer


Joined: 06 Dec 2018
Posts: 2727

PostPosted: Tue Dec 03, 2019 1:22 pm    Post subject: Reply with quote

Just noticed there was a bug for this, thought it wasn't the same thing at first. "Fixed" in this commit by well, blocking pgo with gcc.

So yeah, if want to keep using pgo, for now guess have to use clang (or firefox-bin which supposedly uses clang+lto+pgo too, but you do miss on some hardware-specific optimizations, usage of more system libraries, and few options like native jack/alsa support). clang as I mentioned before is probably better given the low support/testing with gcc by mozilla which is what leads to those problems.

Edit: Correction, apparently the cause was lto. But pgo USE forces lto so you still can't use pgo. Won't be best performance but if just need it to "work" with gcc just disable lto.


Last edited by Ionen on Wed Dec 04, 2019 8:55 am; edited 1 time in total
Back to top
View user's profile Send private message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3638

PostPosted: Tue Dec 03, 2019 1:58 pm    Post subject: Reply with quote

I've seen it too, but quite early, and didn't weent deep into understanding from first post.
Thks 4 pointing out for the update.
This should ease next ebuild, likely to avoid the 'try and error' thingie here.

firefox-bin getting internet back again, but only as workaround: jack is required here.

My two cents this issue will soon be fixed upstream.

Thks 4 ur attention, interest & support.

EDIT : Arghhh, =llvm-8 :evil: Need to rebuild that toolchain
Log snippet while building -clang
Code:
USE: abi_x86_64 amd64 cpu_flags_x86_avx2 custom-cflags elibc_glibc jack kernel_linux l10n_fr lto pgo startup-notification system-av1 system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-sqlite system-webp userland_GNU wayland
FEATURES: distcc-pump network-sandbox preserve-libs sandbox userpriv usersandbox

Unable to unshare: EINVAL

Will use LLVM slot 9!
I hope having both clang/llm|8,9] installed here will not cause any trouble.
Back to top
View user's profile Send private message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3638

PostPosted: Tue Dec 03, 2019 2:26 pm    Post subject: Reply with quote

is clang lld link mandatory here?
If not any advice?

Thks 4 ur attention
Back to top
View user's profile Send private message
Ionen
Developer
Developer


Joined: 06 Dec 2018
Posts: 2727

PostPosted: Tue Dec 03, 2019 2:31 pm    Post subject: Reply with quote

Hm? You should be able to use any llvm from 6 to 9 for firefox (it has all of them in depends), I only have llvm-9 myself (that one isn't marked stable though).
Edit: and yes, you need lld
Edit2: and just emerge clang:8 if you don't want 9

All of those can coexist anyway that's why slots exist.
Back to top
View user's profile Send private message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3638

PostPosted: Tue Dec 03, 2019 3:14 pm    Post subject: Reply with quote

Ok got it, I missed a few masked such as:
Code:
sys-devel/lld-9.0.0
sys-libs/compiler-rt-sanitizers-9.0.0
That's why portage was pulling clang:8 along with firefox[clang].

Thks 4 ur attention, inetrest & support.
Back to top
View user's profile Send private message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3638

PostPosted: Tue Dec 03, 2019 5:24 pm    Post subject: Reply with quote

My clang toolchain has problem there:
Code:
 0:46.10 checking for gcc... (cached) /usr/lib/llvm/9/bin/x86_64-pc-linux-gnu-clang -std=gnu99
 0:46.10 checking whether the C compiler (/usr/lib/llvm/9/bin/x86_64-pc-linux-gnu-clang -std=gnu99 -march=skylake -mtune=skylake -pipe -Wl,-O1 -Wl,-fuse-ld=bfd -Wl,--enable-new-dtags -march=skylake -mtune=skylake -pipe -Wl,-rpath=/usr/lib64/firefox,--enable-new-dtags -Wl,--compress-debug-sections=zlib -fuse-ld=lld) works... (cached) yes
 0:46.10 checking whether the C compiler (/usr/lib/llvm/9/bin/x86_64-pc-linux-gnu-clang -std=gnu99 -march=skylake -mtune=skylake -pipe -Wl,-O1 -Wl,-fuse-ld=bfd -Wl,--enable-new-dtags -march=skylake -mtune=skylake -pipe -Wl,-rpath=/usr/lib64/firefox,--enable-new-dtags -Wl,--compress-debug-sections=zlib -fuse-ld=lld) is a cross-compiler... no
 0:46.10 checking whether we are using GNU C... (cached) yes
 0:46.10 checking whether /usr/lib/llvm/9/bin/x86_64-pc-linux-gnu-clang -std=gnu99 accepts -g... (cached) yes
 0:46.10 checking for c++... (cached) /usr/lib/llvm/9/bin/x86_64-pc-linux-gnu-clang++
 0:46.10 checking whether the C++ compiler (/usr/lib/llvm/9/bin/x86_64-pc-linux-gnu-clang++ -march=skylake -mtune=skylake -pipe -Wl,-O1 -Wl,-fuse-ld=bfd -Wl,--enable-new-dtags -march=skylake -mtune=skylake -pipe -Wl,-rpath=/usr/lib64/firefox,--enable-new-dtags -Wl,--compress-debug-sections=zlib -fuse-ld=lld) works... (cached) yes
 0:46.10 checking whether the C++ compiler (/usr/lib/llvm/9/bin/x86_64-pc-linux-gnu-clang++ -march=skylake -mtune=skylake -pipe -Wl,-O1 -Wl,-fuse-ld=bfd -Wl,--enable-new-dtags -march=skylake -mtune=skylake -pipe -Wl,-rpath=/usr/lib64/firefox,--enable-new-dtags -Wl,--compress-debug-sections=zlib -fuse-ld=lld) is a cross-compiler... no
 0:46.10 checking whether we are using GNU C++... (cached) yes
 0:46.10 checking whether /usr/lib/llvm/9/bin/x86_64-pc-linux-gnu-clang++ accepts -g... (cached) yes
 0:46.10 checking for ranlib... x86_64-pc-linux-gnu-ranlib
 0:46.10 checking for /usr/lib/llvm/9/bin/x86_64-pc-linux-gnu-clang... /usr/lib/llvm/9/bin/x86_64-pc-linux-gnu-clang -std=gnu99
 0:46.10 checking for strip... strip
 0:46.11 checking for otool... no
 0:46.11 checking for X... libraries /usr/lib64, headers /usr/include
 0:46.24 checking for dnet_ntoa in -ldnet... no
 0:46.31 checking for dnet_ntoa in -ldnet_stub... no
 0:46.39 checking for gethostbyname... no
 0:46.45 checking for gethostbyname in -lnsl... no
 0:46.52 checking for connect... no
 0:46.60 checking for connect in -lsocket... no
 0:46.66 checking for remove... no
 0:46.75 checking for remove in -lposix... no
 0:46.81 checking for shmat... no
 0:46.89 checking for shmat in -lipc... no
 0:46.97 checking for IceConnectionNumber in -lICE... no
 0:47.03 configure: error: compiler is incompatible with sanitize options
 0:47.03 DEBUG: <truncated - see config.log for full output>
 0:47.03 DEBUG: #include "confdefs.h"
 0:47.03 DEBUG: /* Override any gcc2 internal prototype to avoid an error.  */
 0:47.03 DEBUG: /* We use char because int might match the return type of a gcc2
 0:47.03 DEBUG:     builtin and then its argument prototype would still apply.  */
 0:47.03 DEBUG: char IceConnectionNumber();
 0:47.03 DEBUG:
 0:47.03 DEBUG: int main() {
 0:47.03 DEBUG: IceConnectionNumber()
 0:47.03 DEBUG: ; return 0; }
 0:47.03 DEBUG: configure:4040: /usr/lib/llvm/9/bin/x86_64-pc-linux-gnu-clang -std=gnu99 -o conftest -march=skylake -mtune=skylake -pipe -Qunused-arguments  -Wl,-O1 -Wl,-fuse-ld=bfd -Wl,--enable-new-dtags -march=skylake -mtune=skylake -pipe -Wl,-rpath=/usr/lib64/firefox,--enable-new-dtags -Wl,--compress-debug-sections=zlib -fuse-ld=lld conftest.c  1>&5
 0:47.03 DEBUG: ld.lld: error: unknown argument '-fuse-ld=bfd'
 0:47.03 DEBUG: clang-9: error: linker command failed with exit code 1 (use -v to see invocation)
 0:47.03 DEBUG: configure: failed program was:
 0:47.03 DEBUG: #line 4033 "configure"
 0:47.04 DEBUG: #include "confdefs.h"
 0:47.04 DEBUG:
 0:47.04 DEBUG: int main() {
 0:47.04 DEBUG:
 0:47.04 DEBUG: ; return 0; }
 0:47.04 DEBUG: configure: error: compiler is incompatible with sanitize options
 0:47.04 ERROR: old-configure failed
 0:47.20 *** Fix above errors and then restart with\
 0:47.20                "./mach build"
 0:47.20 gmake: *** [client.mk:115: configure] Error 1
 * ERROR: www-client/firefox-71.0::gentoo failed (configure phase):
 *   (no error message)
Code:
equery u clang
Legend : U - final flag setting for installation]
[        : I - package is installed with flag     ]
[ Colors : set, unset                             ]
 * Found these USE flags for sys-devel/clang-9.0.0:
 U I
 - - abi_x86_32                     : 32-bit (x86) libraries
 - - debug                          : Enable extra debug codepaths, like
                                      asserts and extra output. If you want
                                      to get meaningful backtraces see https:
                                      //wiki.gentoo.org/wiki/Project:Quality_
                                      Assurance/Backtraces
 - - default-compiler-rt            : Use compiler-rt instead of libgcc as
                                      the default rtlib for clang
 - - default-libcxx                 : Use libc++ instead of libstdc++ as the
                                      default stdlib for clang
 - - doc                            : Add extra documentation (API, Javadoc,
                                      etc). It is recommended to enable per
                                      package instead of globally
 - - llvm_targets_AArch64           : AArch64 CPU target (arm64 in Gentoo)
 - - llvm_targets_AMDGPU            : AMDGPU target (supports R600 and GCN
                                      GPUs)
 - - llvm_targets_ARM               : ARM CPU target
 - - llvm_targets_BPF               : Berkeley Packet Filter target
 - - llvm_targets_Hexagon           : Qualcomm Hexagon DSP target
 - - llvm_targets_Lanai             : Lanai CPU target
 - - llvm_targets_MSP430            : MSP430 CPU target (experimental)
 - - llvm_targets_Mips              : MIPS CPU target (includes MIPS64)
 - - llvm_targets_NVPTX             : NVIDIA PTX (GPU) target (32-bit and
                                      64-bit)
 - - llvm_targets_PowerPC           : PowerPC CPU target (PPC32 and PPC64)
 - - llvm_targets_RISCV             : RISC-V CPU target
 - - llvm_targets_Sparc             : Sparc CPU target
 - - llvm_targets_SystemZ           : SystemZ (s390x) CPU target
 - - llvm_targets_WebAssembly       : WebAssembly backend
 - - llvm_targets_XCore             : XCore CPU target
 - - python_single_target_python2_7 : Build for Python 2.7 only
 - - python_single_target_python3_5 : Build for Python 3.5 only
 + + python_single_target_python3_6 : Build for Python 3.6 only
 - - python_single_target_python3_7 : Build for Python 3.7 only
 + + python_targets_python2_7       : Build with Python 2.7
 - - python_targets_python3_5       : Build with Python 3.5
 + + python_targets_python3_6       : Build with Python 3.6
 + + python_targets_python3_7       : Build with Python 3.7
 - - static-analyzer                : Install the Clang static analyzer
 - - test                           : Enable dependencies and/or preparations
                                      necessary to run tests (usually
                                      controlled by FEATURES=test but can be
                                      toggled independently)
 - - xml                            : Add support for XML files
Code:
equery use llvm
[ Legend : U - final flag setting for installation]
[        : I - package is installed with flag     ]
[ Colors : set, unset                             ]
 * Found these USE flags for sys-devel/llvm-9.0.0:
 U I
 - - abi_x86_32               : 32-bit (x86) libraries
 - - debug                    : Enable extra debug codepaths, like asserts
                                and extra output. If you want to get
                                meaningful backtraces see https://wiki.gentoo
                                .org/wiki/Project:Quality_Assurance/Backtrace
                                s
 - - doc                      : Build and install the HTML documentation and
                                regenerate the man pages
 - - exegesis                 : Enable performance counter support for
                                llvm-exegesis tool that can be used to
                                measure host machine instruction
                                characteristics
 + + gold                     : Build the gold linker plugin
 - - libedit                  : Use the libedit library (replacement for
                                readline)
 - - libffi                   : Enable support for Foreign Function Interface
                                library
 - - llvm_targets_AArch64     : AArch64 CPU target (arm64 in Gentoo)
 - - llvm_targets_AMDGPU      : AMDGPU target (supports R600 and GCN GPUs)
 - - llvm_targets_ARM         : ARM CPU target
 - - llvm_targets_BPF         : Berkeley Packet Filter target
 - - llvm_targets_Hexagon     : Qualcomm Hexagon DSP target
 - - llvm_targets_Lanai       : Lanai CPU target
 - - llvm_targets_MSP430      : MSP430 CPU target (experimental)
 - - llvm_targets_Mips        : MIPS CPU target (includes MIPS64)
 - - llvm_targets_NVPTX       : NVIDIA PTX (GPU) target (32-bit and 64-bit)
 - - llvm_targets_PowerPC     : PowerPC CPU target (PPC32 and PPC64)
 - - llvm_targets_RISCV       : RISC-V CPU target
 - - llvm_targets_Sparc       : Sparc CPU target
 - - llvm_targets_SystemZ     : SystemZ (s390x) CPU target
 - - llvm_targets_WebAssembly : WebAssembly backend
 - - llvm_targets_XCore       : XCore CPU target
 - - ncurses                  : Support querying terminal properties using
                                ncurses' terminfo
 - - test                     : Enable dependencies and/or preparations
                                necessary to run tests (usually controlled by
                                FEATURES=test but can be toggled
                                independently)
 - - xar                      : Support dumping LLVM bitcode sections in
                                Mach-O files (uses app-arch/xar)
 - - xml                      : Add support for XML files
 - - z3                       : Enable support for sci-mathematics/z3
                                constraint solver
Code:
emerge --info
Portage 2.3.79 (python 3.6.9-final-0, default/linux/amd64/17.1, gcc-9.2.0, glibc-2.29-r2, 4.19.82-rt x86_64)
=================================================================
System uname: Linux-4.19.82-rt-x86_64-Intel-R-_Core-TM-_i3-6100_CPU_@_3.70GHz-with-gentoo-2.6
KiB Mem:     3937376 total,    136480 free
KiB Swap:    8048528 total,   8033928 free
Timestamp of repository gentoo: Tue, 03 Dec 2019 15:15:01 +0000
Head commit of repository gentoo: 777b8eccb294ecae84fe00016b329265c8dace8a
sh bash 4.4_p23-r1
ld GNU ld (Gentoo 2.32 p2) 2.32.0
distcc 3.3.3 x86_64-pc-linux-gnu [disabled]
app-shells/bash:          4.4_p23-r1::gentoo
dev-java/java-config:     2.2.0-r4::gentoo
dev-lang/perl:            5.28.2-r1::gentoo
dev-lang/python:          2.7.16::gentoo, 3.6.9::gentoo
dev-util/cmake:           3.14.6::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.6-r1::gentoo
sys-apps/openrc:          0.41.2::gentoo
sys-apps/sandbox:         2.13::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.16.1-r1::gentoo
sys-devel/binutils:       2.32-r1::gentoo
sys-devel/gcc:            9.2.0-r2::gentoo
sys-devel/gcc-config:     2.1::gentoo
sys-devel/libtool:        2.4.6-r3::gentoo
sys-devel/make:           4.2.1-r4::gentoo
sys-kernel/linux-headers: 4.19::gentoo (virtual/os-headers)
sys-libs/glibc:           2.29-r2::gentoo
Repositories:
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=skylake -mtune=skylake  -O2             -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.3/ext-active/ /etc/php/cgi-php7.3/ext-active/ /etc/php/cli-php7.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=skylake -mtune=skylake  -O2             -pipe    "
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="   --alert y                       --alphabetical       --ask-enter-invalid                      --autounmask y                       --autounmask-only n                      --autounmask-unrestricted-atoms y    --autounmask-write y                     --misspell-suggestions n             --noconfmem                      --nospinner                     --tree       --with-bdeps y"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distcc-pump distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned sandbox sfperms split-elog strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://mirrors.evowise.com/gentoo/ http://ftp.free.fr/mirrors/ftp.gentoo.org/ https://mirrors.evowise.com/gentoo/ http://mirror.dkm.cz/gentoo/ http://mirror.eu.oneandone.net/linux/distributions/gentoo/gentoo/ http://mirror.netcologne.de/gentoo/ http://mirror.leaseweb.com/gentoo/ http://mirror.bytemark.co.uk/gentoo/ http://gentoo.mirror.web4u.cz/ http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/"
LANG="fr_FR.utf8"
LDFLAGS="  -Wl,-O1       -Wl,-fuse-ld=bfd  -Wl,--enable-new-dtags  -march=skylake -mtune=skylake  -O2             -pipe "
LINGUAS="fr"
MAKEOPTS="-j2 -l2"
PKGDIR="/usr/portage/packages"
PORTAGE_COMPRESS="lzma"
PORTAGE_COMPRESS_FLAGS="-9"
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="/var/tmp"
USE="amd64 asm minimal split-usr" ABI_X86="64" ALSA_CARDS="hda-intel" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GRUB_PLATFORMS="pc" INPUT_DEVICES="libinput" KERNEL="linux" L10N="fr" PHP_TARGETS="php7-3" PYTHON_SINGLE_TARGET="python3_6" PYTHON_TARGETS="python2_7 python3_6 python3_7 python3_8" QEMU_USER_TARGETS="aarch64" RUBY_TARGETS="ruby25" USERLAND="GNU" VIDEO_CARDS="intel i965"
Unset:  CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_RSYNC_EXTRA_OPTS
What am I missing there?

Thks 4 ur attention, inet[/code]rest & support.
Back to top
View user's profile Send private message
Ionen
Developer
Developer


Joined: 06 Dec 2018
Posts: 2727

PostPosted: Tue Dec 03, 2019 5:33 pm    Post subject: Reply with quote

Code:
ld.lld: error: unknown argument '-fuse-ld=bfd'
I don't think telling ld.lld to use ld.bfd is supposed to work out (it's in your LDFLAGS).
Edit: Generally there's no reason to even use this flag globally (only for exceptions if needed), you can use binutils-config to set a default but currently it's already ld.bfd looking at your --info so there's no need to touch this. Just cleanup the flag and let the ebuild pick the right thing.


Last edited by Ionen on Tue Dec 03, 2019 5:41 pm; edited 1 time in total
Back to top
View user's profile Send private message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3638

PostPosted: Tue Dec 03, 2019 5:39 pm    Post subject: Reply with quote

Sure, my question is: what changes to do to compile firefox[clang] on a portage defaulted to run on gcc toolchain?

Thks 4 ur attention, interest & support.
Back to top
View user's profile Send private message
Ionen
Developer
Developer


Joined: 06 Dec 2018
Posts: 2727

PostPosted: Tue Dec 03, 2019 5:44 pm    Post subject: Reply with quote

The ebuild already takes care of everything if you just have the clang USE flag, there's nothing to do except make sure you don't have flags that clang/lld can't use (as pointed above), but "most" flags work for both.
Back to top
View user's profile Send private message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3638

PostPosted: Tue Dec 03, 2019 6:15 pm    Post subject: Reply with quote

Code:
ld.lld: error: unknown argument '-fuse-ld=bfd'
removed out of the way and building now.

Thks 4 ur attention, interest & support.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum