Skip to content
This repository has been archived by the owner on Oct 3, 2022. It is now read-only.

Troubleshooting

Alexander Bilyak edited this page May 15, 2020 · 1 revision

Troubleshooting

After changing clang version in make.conf some packages still refer to old version

Some packages may use perl for config step. And perl seems to detect compiler used for it's compilation. So you simply recompile perl

example: after swithing CC="/usr/lib/llvm/8/bin/clang" to CC="/usr/lib/llvm/9/bin/clang" in /etc/portage/make.conf you may see something like this:

>>> Emerging (1 of 1) dev-perl/HTML-Parser-3.720.0::gentoo
 * HTML-Parser-3.72.tar.gz BLAKE2B SHA512 size ;-) ...                                                                                                                                                                                                                  [ ok ]
>>> Unpacking source...
>>> Unpacking HTML-Parser-3.72.tar.gz to /var/tmp/portage/dev-perl/HTML-Parser-3.720.0/work
>>> Source unpacked in /var/tmp/portage/dev-perl/HTML-Parser-3.720.0/work
>>> Preparing source in /var/tmp/portage/dev-perl/HTML-Parser-3.720.0/work/HTML-Parser-3.72 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/dev-perl/HTML-Parser-3.720.0/work/HTML-Parser-3.72 ...
 * Using ExtUtils::MakeMaker
 * perl Makefile.PL PREFIX=/usr INSTALLDIRS=vendor INSTALLMAN3DIR=none DESTDIR=/var/tmp/portage/dev-perl/HTML-Parser-3.720.0/image/
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for HTML::Parser
Writing MYMETA.yml and MYMETA.json
>>> Source configured.
>>> Compiling source in /var/tmp/portage/dev-perl/HTML-Parser-3.720.0/work/HTML-Parser-3.72 ...
 * emake OTHERLDFLAGS=-Wl,-O1 -Wl,--as-needed
make -j5 'OTHERLDFLAGS=-Wl,-O1 -Wl,--as-needed' 
Running Mkbootstrap for Parser ()
"/usr/bin/perl" "/usr/lib64/perl5/5.30.1/ExtUtils/xsubpp"  -typemap '/usr/lib64/perl5/5.30.1/ExtUtils/typemap' -typemap '/var/tmp/portage/dev-perl/HTML-Parser-3.720.0/work/HTML-Parser-3.72/typemap'  Parser.xs > Parser.xsc
"/usr/bin/perl" mkhctype >hctype.h
"/usr/bin/perl" mkpfunc >pfunc.h
chmod 644 "Parser.bs"
"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Parser.bs blib/arch/auto/HTML/Parser/Parser.bs 644
cp lib/HTML/LinkExtor.pm blib/lib/HTML/LinkExtor.pm
cp lib/HTML/PullParser.pm blib/lib/HTML/PullParser.pm
cp lib/HTML/TokeParser.pm blib/lib/HTML/TokeParser.pm
cp lib/HTML/Filter.pm blib/lib/HTML/Filter.pm
cp Parser.pm blib/lib/HTML/Parser.pm
cp lib/HTML/HeadParser.pm blib/lib/HTML/HeadParser.pm
cp lib/HTML/Entities.pm blib/lib/HTML/Entities.pm
mv Parser.xsc Parser.c
/usr/lib/llvm/8/bin/clang -c   -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -march=native -O2 -pipe   -DVERSION=\"3.72\" -DXS_VERSION=\"3.72\" -fPIC "-I/usr/lib64/perl5/5.30.1/x86_64-linux/CORE"  -DMARKED_SECTION Parser.c
/bin/sh: /usr/lib/llvm/8/bin/clang: No such file or directory
make: *** [Makefile:352: Parser.o] Error 127
 * ERROR: dev-perl/HTML-Parser-3.720.0::gentoo failed (compile phase):
 *   emake failed
 * 
 * If you need support, post the output of `emerge --info '=dev-perl/HTML-Parser-3.720.0::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=dev-perl/HTML-Parser-3.720.0::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/dev-perl/HTML-Parser-3.720.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/dev-perl/HTML-Parser-3.720.0/temp/environment'.
 * Working directory: '/var/tmp/portage/dev-perl/HTML-Parser-3.720.0/work/HTML-Parser-3.72'
 * S: '/var/tmp/portage/dev-perl/HTML-Parser-3.720.0/work/HTML-Parser-3.72'

solution: re-emerge perl with new compiler

emerge -av1 perl
emerge --resume -v
Clone this wiki locally