Summary: | sys-devel/gcc-4.4.4-r2: ICE on media-video/mkvtoolnix-3.3.0[-flac] when pre-processor flags are given at command-line | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | badboy <dev.c0b1> |
Component: | New packages | Assignee: | Gentoo Toolchain Maintainers <toolchain> |
Status: | RESOLVED NEEDINFO | ||
Severity: | normal | CC: | esigra, flameeyes, gentoo, gentoo, h.mth, media-video, radek |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | x86 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 249226 |
Description
badboy
2010-03-27 10:29:34 UTC
I am not the only one seeing this, phew. Same thing, segfault in flac_common.cpp. USE="bzip2 -debug -doc -flac -lzo -qt4 -wxwidgets" Portage 2.2_rc67 (default/linux/amd64/10.0/desktop, gcc-4.4.3, glibc-2.11-r1, 2.6.33-zen1-nyth-v14 x86_64) ================================================================= System uname: Linux-2.6.33-zen1-nyth-v14-x86_64-Intel-R-_Core-TM-2_Quad_CPU_Q9300_@_2.50GHz-with-gentoo-2.0.1 Timestamp of tree: Sat, 27 Mar 2010 14:30:01 +0000 app-shells/bash: 4.1_p2-r1 dev-java/java-config: 2.1.10 dev-lang/python: 2.6.5-r1 dev-python/pycrypto: 2.1.0 dev-util/cmake: 2.8.1 sys-apps/baselayout: 2.0.1 sys-apps/openrc: 0.6.1-r1 sys-apps/sandbox: 2.2 sys-devel/autoconf: 2.13, 2.65 sys-devel/automake: 1.9.6-r3, 1.10.3, 1.11.1 sys-devel/binutils: 2.20.1 sys-devel/gcc: 4.4.3 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6b virtual/os-headers: 2.6.33 ABI="amd64" ACCEPT_KEYWORDS="amd64 ~amd64" CBUILD="x86_64-pc-linux-gnu" CC="x86_64-pc-linux-gnu-gcc-4.4.3" CDEFINE_amd64="__x86_64__" CDEFINE_x86="__i386__" CFLAGS="-O2 -pipe -march=native" CFLAGS_x86="-m32" CHOST="x86_64-pc-linux-gnu" CHOST_amd64="x86_64-pc-linux-gnu" compile Ok with: USE="flac" emerge mkvtoolnix equery u mkvtoolnix * Searching for mkvtoolnix ... [ Legend : U - flag is set in make.conf ] [ : I - package is installed with flag ] [ Colors : set, unset ] * Found these USE flags for media-video/mkvtoolnix-3.3.0: U I + + bzip2 : Use the bzlib compression library - - debug : Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see http://www.gentoo.org/proj/en/qa/backtraces.xml - - doc : Adds extra documentation (API, Javadoc, etc) - + flac : Adds support for FLAC: Free Lossless Audio Codec - - lzo : Enables support for lzo compression + + qt4 : Adds support for the Qt GUI/Application Toolkit version 4.x - - wxwidgets : Adds support for wxWidgets/wxGTK GUI toolkit Fun: if I pre-process the file (-E -o foo.i) it does not seem to crash any more… yamato mkvtoolnix-3.3.0 # x86_64-pc-linux-gnu-g++ -O3 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -march=barcelona -O2 -ftracer -ftree-vectorize -g -ggdb -fvisibility-inlines-hidden -DPACKAGE=\"mkvtoolnix\" -DVERSION=\"3.3.0\" -DMTX_LOCALE_DIR=\"/usr/share/locale\" -DMTX_PKG_DATA_DIR=\"/usr/share/mkvtoolnix\" -I. -Ilib -Ilib/avilib-0.6.10 -Ilib/utf8-cpp/source -Isrc -MMD -c -o src/input/flac_common.o src/input/flac_common.cppcc1plus: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See <http://bugs.gentoo.org/> for instructions. yamato mkvtoolnix-3.3.0 # x86_64-pc-linux-gnu-g++ -O3 -march=barcelona -O2 -ftracer -ftree-vectorize -g -ggdb -fvisibility-inlines-hidden -DPACKAGE=\"mkvtoolnix\" -DVERSION=\"3.3.0\" -DMTX_LOCALE_DIR=\"/usr/share/locale\" -DMTX_PKG_DATA_DIR=\"/usr/share/mkvtoolnix\" -I. -Ilib -Ilib/avilib-0.6.10 -Ilib/utf8-cpp/source -Isrc -MMD -c -o src/input/flac_common.o src/input/flac_common.cpp what the heck! if I drop the LFS definitions on CPPFLAGS it works _fine_. x86_64-pc-linux-gnu-g++ -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -march=barcelona -O -DPACKAGE=\"mkvtoolnix\" -DVERSION=\"3.3.0\" -DMTX_LOCALE_DIR=\"/usr/share/locale\" -DMTX_PKG_DATA_DIR=\"/usr/share/mkvtoolnix\" -Isrc -c -o src/input/flac_common.o src/input/flac_common.cpp It seems to be related to the way the preprocessor works, as dropping any more of these flags causes the compiler to proceed (or, in case of -Isrc, to output an error for missing includes — there are still missing includes and it'll fail without them, but it won't report them unless I drop a define, the march or the optimisations. someone post the exact file as an attachment and the required command line to make gcc ICE Some observations: - happens with mkvtoolnix up to 4.1.1 - happens on my opteron machines (64bit) with gcc-4.3.4/gcc-4.4.3 - compilation succeeds if #include "common/common_pch.h" is removed/commented out in src/input/flac_common.cpp - compilation succeeds with -O0 or -Os, not -O1, -O2 or -O3 - compilation succeeds with optimizations if I remove either -mfpmath=sse or -march=athlon64 As a workaround I'd suggest a patch to remove the #include line, however gcc devels should look into why it crashed. It compiled straight on my laptop (Intel based 64bit system), which seems to indicate that reproducing the crash is not as easy. In a chat with beandog he said that enabling qt4 fixes the compile; I did not enable it, however qt is installed on my system. emerge --info for the failing system: Portage 2.1.8.3 (default/linux/amd64/10.0, gcc-4.4.3, glibc-2.11.2-r0, 2.6.33-gentoo x86_64) ================================================================= System Settings ================================================================= System uname: Linux-2.6.33-gentoo-x86_64-Quad-Core_AMD_Opteron-tm-_Processor_8354-with-gentoo-1.12.13 Timestamp of tree: Sun, 18 Jul 2010 16:40:01 +0000 app-shells/bash: 4.0_p37 dev-java/java-config: 2.1.11 dev-lang/python: 2.6.5-r2, 3.1.2-r3 dev-util/cmake: 2.6.4 sys-apps/baselayout: 1.12.13 sys-apps/sandbox: 1.6-r2 sys-devel/autoconf: 2.65 sys-devel/automake: 1.10.3, 1.11.1 sys-devel/binutils: 2.20.1-r1 sys-devel/gcc: 4.4.3-r2 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6b virtual/os-headers: 2.6.34 ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O3 -pipe -march=athlon64 -fomit-frame-pointer -mfpmath=sse" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /lib/modules /usr/share/X11/xkb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O3 -pipe -march=athlon64 -fomit-frame-pointer -mfpmath=sse" DISTDIR="/usr/rportage/distfiles" EMERGE_DEFAULT_OPTS="-j4 --load-average=32 --keep-going" FEATURES="assume-digests distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org" LANG="en_US.UTF-8" LC_ALL="en_US.UTF-8" LDFLAGS="-Wl,-O1" LINGUAS="en en_GB en_US de" MAKEOPTS="-j6" PKGDIR="/usr/rportage/packages/" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local/layman/sunrise /usr/portage/local/layman/berkano /usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow 3dnowext a52 aac amd64 berkdb bzip2 crypt dts encode faac faad ffmpeg gdbm gpm hardened httpd ipv6 ithreads jpeg lm_sensors matroska mmx mmx2 mmxext mp3 mpeg multilib ncurses nls no-old-linux ogg pam pic png postproc readline sensord slang sse sse2 ssl stream threads unicode x264 xinetd xorg zlib" 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" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_GB en_US de" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="xgi" 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: CPPFLAGS, CTARGET, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS This bug is still valid for 4.2.0 on an Atom D510 based system. Furthermore enabling the flac useflag makes the error go away. Portage 2.1.8.3 (default/linux/x86/10.0, gcc-4.4.3, glibc-2.11.2-r0, 2.6.34-gentoo-r6 i686) ================================================================= System uname: Linux-2.6.34-gentoo-r6-i686-Intel-R-_Atom-TM-_CPU_D510_@_1.66GHz-with-gentoo-1.12.13 Timestamp of tree: Wed, 08 Sep 2010 18:50:01 +0000 distcc 3.1 i686-pc-linux-gnu [enabled] app-shells/bash: 4.1_p7 dev-lang/python: 2.6.5-r3, 3.1.2-r4 dev-util/cmake: 2.8.1-r2 sys-apps/baselayout: 1.12.13 sys-apps/sandbox: 1.6-r2 sys-devel/autoconf: 2.65 sys-devel/automake: 1.11.1 sys-devel/binutils: 2.20.1-r1 sys-devel/gcc: 4.4.3-r2 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6b sys-devel/make: 3.81-r2 virtual/os-headers: 2.6.30-r1 ACCEPT_KEYWORDS="x86" ACCEPT_LICENSE="* -@EULA" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=core2 -msse3 -mfpmath=sse -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O2 -march=core2 -msse3 -mfpmath=sse -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="assume-digests distcc distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="ftp://ftp.klid.dk/gentoo/ ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo http://mirror.gentoo.no/ rsync://ftp.df.lth.se/pub/gentoo/" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j9" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.se.gentoo.org/gentoo-portage" USE="acl acpi berkdb bzip2 cli cracklib crypt cups cxx dri dvb faac faad flac gdbm gpm iconv libextractor mmx mmxext modules mp3 mudflap ncurses network nls nptl nptlonly openmp pam pcre perl pppd python qt4 readline reflection session sse sse2 sse3 ssl ssse3 sysfs tcpd theora threads transcode unicode v4l v4l2 vhosts vorbis x264 x86 xvid zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="intel" 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: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY Closing since the older versions of mkvtoolnix with this issue have been removed from the tree. the compiler still has a bug in it, but no one has yet to post the .i file for people to test with ... |