Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 728724 - media-video/vlc-3.0.11 fails src_configure w/ gcc-config[-native-symlinks]
Summary: media-video/vlc-3.0.11 fails src_configure w/ gcc-config[-native-symlinks]
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Media-video project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: tc-directly
  Show dependency tree
 
Reported: 2020-06-19 06:24 UTC by Kent Fredric (IRC: kent\n) (RETIRED)
Modified: 2020-07-29 13:31 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2020-06-19 06:24:04 UTC
First, to replicate this, you must undo some silly things done by gcc:

> rm /usr/bin/c99 
> rm /usr/bin/c89

As these are wrapper scripts installed in gcc's post_inst which are *also* broken because internally, they just invoke "gcc", which doesn't exist ( bug #728722 )

And then, also, you must make sure you purge ccache shadows

> eselect compiler-shadow clean all

Otherwise, configure will see a c99 in PATH and go "Yep, we can use that", without ever testing it works, and later failing in compilation, such as:

> make[2]: Entering directory '/var/tmp/portage/media-video/vlc-3.0.11/work/vlc-3.0.11/src'
> Makefile:3707: warning: ignoring prerequisites on suffix rule definition
> Makefile:3711: warning: ignoring prerequisites on suffix rule definition
> rm -f -- "../include/vlc_about.h.tmp"
> rm -f -- fourcc_gen
> rm -f -- revision.tmp
> c99 -I. -o fourcc_gen misc/fourcc_gen.c
> if ! git \
>                 --git-dir="../.git/" describe \
>                 --tags --long --match '?.*.*' --always; then \
>         cat ./revision.txt ; \
> fi > revision.tmp
> ccache: error: Could not find compiler "c99" in PATH
> make[2]: *** [Makefile:3719: fourcc_gen] Error 1
> make[2]: *** Waiting for unfinished jobs....
> mkdir -p -- ../include

Or


> make[2]: Entering directory '/var/tmp/portage/media-video/vlc-3.0.11/work/vlc-3.0.11/src'
> Makefile:3707: warning: ignoring prerequisites on suffix rule definition
> Makefile:3711: warning: ignoring prerequisites on suffix rule definition
> rm -f -- "../include/vlc_about.h.tmp"
> rm -f -- fourcc_gen
> rm -f -- revision.tmp
> c99 -I. -o fourcc_gen misc/fourcc_gen.c
> mkdir -p -- ../include
> if ! git \
>                 --git-dir="../.git/" describe \
>                 --tags --long --match '?.*.*' --always; then \
>         cat ./revision.txt ; \
> fi > revision.tmp
> (echo "/* Automatically generated file - DO NOT EDIT */" && \
> echo "static const char psz_license[] =" && \
> sed 's/"/\\"/g;s/^.*$/\"&\\n\"/' "../COPYING" && \
> echo ";" && \
> echo "static const char psz_thanks[] =" && \
> sed '/\$Id:/d;s/"/\\"/g;s/<.*.> //;s/^.*$/\"&\\n\"/' \
>         "../THANKS" && \
> echo ";" && \
> echo "static const char psz_authors[] =" && \
> sed '/\$Id:/d;s/"/\\"/g;s/<.*.> //;s/^.*$/\"&\\n\"/' \
>         "../AUTHORS" && \
> echo ";") >> "../include/vlc_about.h.tmp"
> /usr/bin/c99: line 21: exec: gcc: not found

_Only_ then can you see the proper failure in configure.

checking for bison... bison -y
checking for desktop-file-validate... desktop-file-validate
checking for c11-gcc... no
checking for c11... no
checking for c99-gcc... no
checking for c99... no
configure: error: Cannot find native C99 compiler: please define BUILDCC.

And the respective config.log lines:

configure:8293: checking for desktop-file-validate
configure:8309: found /usr/bin/desktop-file-validate
configure:8320: result: desktop-file-validate
configure:8337: checking for c11-gcc
configure:8367: result: no
configure:8337: checking for c11
configure:8367: result: no
configure:8337: checking for c99-gcc
configure:8367: result: no
configure:8337: checking for c99
configure:8367: result: no
configure:8378: error: Cannot find native C99 compiler: please define BUILDCC.

And respective lines in configure:

> 8337:ac_cv_prog_lex_yytext_pointer=no
> 8338:ac_save_LIBS=$LIBS
> 8339:LIBS="$LEXLIB $ac_save_LIBS"
> 8340:cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> 8341:/* end confdefs.h.  */
> 8342:
> 8343:  #define YYTEXT_POINTER 1
> 8344:`cat $LEX_OUTPUT_ROOT.c`
> 8345:_ACEOF
> 8346:if ac_fn_c_try_link "$LINENO"; then :
> 8347:  ac_cv_prog_lex_yytext_pointer=yes
> 8348:fi
> 8349:rm -f core conftest.err conftest.$ac_objext \
> 8350:    conftest$ac_exeext conftest.$ac_ext
> 8351:LIBS=$ac_save_LIBS
> 8352:
> 8353:fi
> 8354:{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_lex_yytext_pointer" >&5
> 8355:$as_echo "$ac_cv_prog_lex_yytext_pointer" >&6; }
> 8356:if test $ac_cv_prog_lex_yytext_pointer = yes; then
> 8357:
> 8358:$as_echo "#define YYTEXT_POINTER 1" >>confdefs.h
> 8359:
> 8360:fi
> 8361:rm -f conftest.l $LEX_OUTPUT_ROOT.c
> 8362:
> 8363:fi
> 8364:for ac_prog in 'bison -y' byacc
> 8365:do
> 8366:  # Extract the first word of "$ac_prog", so it can be a program name with args.
> 8367:set dummy $ac_prog; ac_word=$2
> 8368:{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
> 8369:$as_echo_n "checking for $ac_word... " >&6; }
> 8370:if ${ac_cv_prog_YACC+:} false; then :
> 8371:  $as_echo_n "(cached) " >&6
> 8372:else
> 8373:  if test -n "$YACC"; then
> 8374:  ac_cv_prog_YACC="$YACC" # Let the user override the test.
> 8375:else
> 8376:as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
> 8377:for as_dir in $PATH
> 8378:do
> 8379:  IFS=$as_save_IFS
> 8380:  test -z "$as_dir" && as_dir=.
> 8381:    for ac_exec_ext in '' $ac_executable_extensions; do
> 8382:  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
> 8383:    ac_cv_prog_YACC="$ac_prog"
> 8384:    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
> 8385:    break 2
> 8386:  fi
> 8387:done
> 8388:  done
> 8389:IFS=$as_save_IFS

 * Package:    media-video/vlc-3.0.11
 * Repository: gentoo
 * Maintainer: media-video@gentoo.org
 * USE:        X a52 abi_x86_64 alsa amd64 bluray cddb cpu_flags_x86_mmx cpu_flags_x86_sse dbus dts dvbpsi dvd elibc_glibc encode faad ffmpeg flac gcrypt gme jpeg kate kernel_linux libass libnotify libsamplerate libtiger matroska modplug mp3 mpeg mtp musepack ncurses ogg opus png projectm pulseaudio qt5 sdl-image sftp shout speex ssl svg taglib theora truetype udev upnp userland_GNU v4l vaapi vnc vorbis x264
 * FEATURES:   ccache compressdebug network-sandbox preserve-libs sandbox splitdebug userpriv usersandbox
Comment 1 Larry the Git Cow gentoo-dev 2020-07-29 13:31:53 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=be45d095f11086a83ebb40d763b42b1431673632

commit be45d095f11086a83ebb40d763b42b1431673632
Author:     Thomas Deutschmann <whissi@gentoo.org>
AuthorDate: 2020-07-29 13:31:25 +0000
Commit:     Thomas Deutschmann <whissi@gentoo.org>
CommitDate: 2020-07-29 13:31:46 +0000

    media-video/vlc: don't call tc directly
    
    Closes: https://bugs.gentoo.org/728724
    Package-Manager: Portage-3.0.1, Repoman-2.3.23
    Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>

 media-video/vlc/vlc-3.0.10-r1.ebuild | 2 ++
 media-video/vlc/vlc-3.0.11.1.ebuild  | 2 ++
 media-video/vlc/vlc-3.0.11.ebuild    | 2 ++
 media-video/vlc/vlc-3.0.9999.ebuild  | 2 ++
 media-video/vlc/vlc-9999.ebuild      | 2 ++
 5 files changed, 10 insertions(+)