build.log: * CPV: media-plugins/gst-plugins-ffmpeg-0.10.9 * REPO: gentoo * USE: elibc_glibc kernel_linux test userland_GNU x86 (...) libavcodec/bitstream.c: In function 'alloc_table': libavcodec/bitstream.c:129: warning: 'ff_realloc_static' is deprecated (declared at libavcodec/bitstream.c:53) libavcodec/bitstream_filter.c: In function 'av_bitstream_filter_filter': libavcodec/bitstream_filter.c:62: warning: cast discards qualifiers from pointer target type In file included from libavcodec/imgconvert.c:38: libavcodec/x86/mmx.h:24:2: warning: #warning Everything in this header is deprecated, use plain __asm__()! New code using this header will be rejected. libavcodec/parser.c: In function 'av_parser_change': libavcodec/parser.c:196: warning: cast discards qualifiers from pointer target type libavcodec/utils.c: In function 'avcodec_encode_audio': libavcodec/utils.c:478: warning: passing argument 4 of 'avctx->codec->encode' discards qualifiers from pointer target type libavcodec/utils.c: In function 'avcodec_encode_video': libavcodec/utils.c:495: warning: passing argument 4 of 'avctx->codec->encode' discards qualifiers from pointer target type libavcodec/utils.c: In function 'avcodec_encode_subtitle': libavcodec/utils.c:514: warning: passing argument 4 of 'avctx->codec->encode' discards qualifiers from pointer target type libavcodec/utils.c: In function 'av_parse_video_frame_size': libavcodec/utils.c:1056: warning: assignment discards qualifiers from pointer target type libavcodec/avs.c: In function 'avs_decode_frame': libavcodec/avs.c:57: warning: 'change_map.buffer' may be used uninitialized in this function libavcodec/bmp.c: In function 'bmp_decode_frame': libavcodec/bmp.c:49: warning: 'rgb[1]' may be used uninitialized in this function libavcodec/bmp.c:49: warning: 'rgb[2]' may be used uninitialized in this function libavcodec/dnxhdenc.c:805: warning: initialization from incompatible pointer type libavcodec/ratecontrol.c: In function 'ff_rate_control_init': libavcodec/ratecontrol.c:109: warning: passing argument 3 of 'ff_parse' discards qualifiers from pointer target type libavcodec/ratecontrol.c:109: warning: passing argument 4 of 'ff_parse' discards qualifiers from pointer target type libavcodec/dv.c: In function 'dvvideo_decode_frame': libavcodec/dv.c:1138: warning: assignment discards qualifiers from pointer target type libavcodec/mpeg12.h:59: warning: inline function 'ff_mpeg1_decode_block_intra' declared but never defined libavcodec/mpeg12.h:59: warning: inline function 'ff_mpeg1_decode_block_intra' declared but never defined libavcodec/rangecoder.c: In function 'ff_init_range_decoder': libavcodec/rangecoder.c:54: warning: cast discards qualifiers from pointer target type libavcodec/rangecoder.c:56: warning: passing argument 1 of 'bytestream_get_be16' from incompatible pointer type libavcodec/flashsv.c: In function 'flashsv_decode_frame': libavcodec/flashsv.c:196: warning: assignment discards qualifiers from pointer target type libavcodec/h264.c: In function 'pred_direct_motion': libavcodec/h264.c:1046: warning: assignment from incompatible pointer type libavcodec/h264.c:1047: warning: assignment from incompatible pointer type libavcodec/h264.c: In function 'filter_mb_dir': libavcodec/h264.c:6284: warning: initialization from incompatible pointer type libavcodec/h264.c:6285: warning: initialization from incompatible pointer type In file included from libavcodec/h264.c:8143: libavcodec/svq3.c: In function 'svq3_decode_slice_header': libavcodec/svq3.c:721: warning: cast discards qualifiers from pointer target type libavcodec/svq3.c:724: warning: cast discards qualifiers from pointer target type libavcodec/h264.c: In function 'execute_ref_pic_marking': libavcodec/h264.c:3280: warning: 'structure' may be used uninitialized in this function libavcodec/h264.c:3272: warning: 'j' may be used uninitialized in this function libavcodec/idcinvideo.c: In function 'idcin_decode_frame': libavcodec/idcinvideo.c:215: warning: 'AVPaletteControl' is deprecated libavcodec/interplayvideo.c: In function 'ipvideo_decode_frame': libavcodec/interplayvideo.c:884: warning: 'AVPaletteControl' is deprecated libavcodec/mpeg12.h:59: warning: inline function 'ff_mpeg1_decode_block_intra' declared but never defined libavcodec/mpeg12.h:59: warning: inline function 'ff_mpeg1_decode_block_intra' declared but never defined libavcodec/mpeg12.h:59: warning: inline function 'ff_mpeg1_decode_block_intra' declared but never defined libavcodec/mpeg12.h:59: warning: inline function 'ff_mpeg1_decode_block_intra' declared but never defined libavcodec/lcldec.c: In function 'decode_frame': libavcodec/lcldec.c:167: warning: cast discards qualifiers from pointer target type libavcodec/nuv.c: In function 'copy_frame': libavcodec/nuv.c:74: warning: passing argument 2 of 'avpicture_fill' discards qualifiers from pointer target type libavcodec/pnmenc.c: In function 'pnm_decode_frame': libavcodec/pnmenc.c:46: warning: assignment discards qualifiers from pointer target type libavcodec/pnmenc.c:47: warning: assignment discards qualifiers from pointer target type libavcodec/pngdec.c: In function 'png_decode_idat': libavcodec/pngdec.c:357: warning: assignment discards qualifiers from pointer target type libavcodec/pngenc.c: In function 'png_write_row': libavcodec/pngenc.c:217: warning: cast discards qualifiers from pointer target type libavcodec/rawdec.c: In function 'raw_decode': libavcodec/rawdec.c:127: warning: passing argument 2 of 'avpicture_fill' discards qualifiers from pointer target type libavcodec/rv34.c: In function 'rv34_set_deblock_coef': libavcodec/rv34.c:1107: warning: initialization from incompatible pointer type libavcodec/svq1dec.c: In function 'svq1_decode_frame': libavcodec/svq1dec.c:663: warning: cast discards qualifiers from pointer target type libavcodec/svq1dec.c:349: warning: 'mv.x' may be used uninitialized in this function libavcodec/svq1dec.c:349: note: 'mv.x' was declared here libavcodec/tscc.c: In function 'decode_frame': libavcodec/tscc.c:95: warning: assignment discards qualifiers from pointer target type libavcodec/xan.c: In function 'xan_decode_frame': libavcodec/xan.c:411: warning: 'AVPaletteControl' is deprecated libavcodec/zmbv.c: In function 'decode_frame': libavcodec/zmbv.c:494: warning: assignment discards qualifiers from pointer target type libavcodec/mpegvideo_parser.c:165: warning: 'mpegvideo_split' defined but not used libavcodec/pnm_parser.c: In function 'pnm_parse': libavcodec/pnm_parser.c:45: warning: cast discards qualifiers from pointer target type libavcodec/pnm_parser.c:46: warning: cast discards qualifiers from pointer target type libavcodec/h264_mp4toannexb_bsf.c: In function 'h264_mp4toannexb_filter': libavcodec/h264_mp4toannexb_bsf.c:61: warning: cast discards qualifiers from pointer target type libavcodec/mp3_header_compress_bsf.c: In function 'mp3_header_compress': libavcodec/mp3_header_compress_bsf.c:41: warning: cast discards qualifiers from pointer target type libavcodec/mp3_header_decompress_bsf.c: In function 'mp3_header_decompress': libavcodec/mp3_header_decompress_bsf.c:36: warning: cast discards qualifiers from pointer target type libavcodec/remove_extradata_bsf.c: In function 'remove_extradata': libavcodec/remove_extradata_bsf.c:45: warning: cast discards qualifiers from pointer target type In file included from libavcodec/x86/dsputil_mmx.c:31: libavcodec/x86/mmx.h:24:2: warning: #warning Everything in this header is deprecated, use plain __asm__()! New code using this header will be rejected. libavcodec/x86/h264dsp_mmx.c: In function 'h264_h_loop_filter_luma_mmx2': libavcodec/x86/dsputil_mmx.c:681: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm' libavcodec/x86/dsputil_mmx.c:681: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm' libavcodec/x86/dsputil_mmx.c:681: error: 'asm' operand has impossible constraints libavcodec/x86/dsputil_mmx.c:681: error: 'asm' operand has impossible constraints libavcodec/x86/dsputil_mmx.c:681: error: 'asm' operand has impossible constraints libavcodec/x86/dsputil_mmx.c:681: error: 'asm' operand has impossible constraints libavcodec/x86/h264dsp_mmx.c:633: error: 'asm' operand has impossible constraints libavcodec/x86/dsputil_mmx.c:681: error: 'asm' operand has impossible constraints libavcodec/x86/dsputil_mmx.c:681: error: 'asm' operand has impossible constraints libavcodec/x86/dsputil_mmx.c:681: error: 'asm' operand has impossible constraints libavcodec/x86/dsputil_mmx.c:681: error: 'asm' operand has impossible constraints libavcodec/x86/dsputil_mmx.c:681: error: 'asm' operand has impossible constraints libavcodec/x86/dsputil_mmx.c:681: error: 'asm' operand has impossible constraints libavcodec/x86/h264dsp_mmx.c:633: error: 'asm' operand has impossible constraints libavcodec/x86/dsputil_mmx.c:681: error: 'asm' operand has impossible constraints libavcodec/x86/dsputil_mmx.c:681: error: 'asm' operand has impossible constraints make[5]: *** [libavcodec/x86/dsputil_mmx.o] Error 1 make[4]: *** [all-local] Error 2 make[3]: *** [all-recursive] Error 1 make[2]: *** [all-recursive] Error 1 make[1]: *** [all-recursive] Error 1 make: *** [all] Error 2 * ERROR: media-plugins/gst-plugins-ffmpeg-0.10.9 failed: * emake failed. * * Call stack: * ebuild.sh, line 61: Called src_compile * environment, line 2722: Called die * The specific snippet of code: * emake || die "emake failed." * * If you need support, post the output of 'emerge --info =media-plugins/gst-plugins-ffmpeg-0.10.9', * the complete build log and the output of 'emerge -pqv =media-plugins/gst-plugins-ffmpeg-0.10.9'. * The complete build log is located at '/var/log/portage/media-plugins:gst-plugins-ffmpeg-0.10.9:20091219-162852.log'. * The ebuild environment file is located at '/var/tmp/portage/media-plugins/gst-plugins-ffmpeg-0.10.9/temp/environment'. * S: '/var/tmp/portage/media-plugins/gst-plugins-ffmpeg-0.10.9/work/gst-ffmpeg-0.10.9'
Portage 2.1.7.15 (hardened/linux/x86/10.0, gcc-4.3.4, glibc-2.11-r1, 2.6.31-zen9 i686) ================================================================= System uname: Linux-2.6.31-zen9-i686-Genuine_Intel-R-_CPU_T2050_@_1.60GHz-with-gentoo-2.0.1 Timestamp of tree: Sat, 19 Dec 2009 09:15:01 +0000 app-shells/bash: 4.0_p35 dev-java/java-config: 2.1.10 dev-lang/python: 2.6.4, 3.1.1-r1 dev-util/cmake: 2.8.0 sys-apps/baselayout: 2.0.1 sys-apps/openrc: 0.5.3 sys-apps/sandbox: 2.1 sys-devel/autoconf: 2.13, 2.64 sys-devel/automake: 1.9.6-r3, 1.10.3, 1.11.1 sys-devel/binutils: 2.20 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6b virtual/os-headers: 2.6.30-r1 ACCEPT_KEYWORDS="x86 ~x86" ACCEPT_LICENSE="* -@EULA" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=native -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /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="-O2 -march=native -pipe -fomit-frame-pointer" DISTDIR="/var/cache/portage/distfiles" EMERGE_DEFAULT_OPTS="--with-bdeps y --nospinner --quiet-build -j3" FEATURES="assume-digests buildpkg distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict test test-fail-continue unmerge-logs unmerge-orphans userfetch userpriv usersandbox" GENTOO_MIRRORS="http://mirrors.163.com/gentoo http://gentoo.aditsu.net" LANG="zh_TW.UTF-8" LC_ALL="C" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LINGUAS="zh_TW zh af am ar as as_IN ast az be be_BY bg bn bn_BD bn_IN bo br brx bs ca crh cs csb cy da de de_FR dgo dz el en en_CA en_GB en_US en_ZA eo es es_AR es_CL es_CR es_ES es_LA es_MX et et_EE eu fa fi fo fr fr_CA fy fy_NL ga ga_IE gl gu gu_IN he hi hi_IN hne hr hsb hu hy id is it ja ka kk km kn kn_IN ko ko_KR kok ks ku la lb lo lt lv mai mk ml ml_IN mn mni mr mr_IN ms mt my nb nb_NO nds ne nl nn nn_NO no nr ns nso oc or or_IN pa pa_IN pl pt pt_BR pt_PT rm ro ru rw sa_IN sat sd se sh sh_YU si sk sl sq sr sr@latin sr@Latn sr_CS ss st sv sv_SE sw sw_TZ ta ta_IN ta_LK te te_IN tg th ti_ER tk tl tn tr ts uk ur_IN ur_PK uz uz@cyrillic ve vi wa xh zh_CN zh_HK zh_TW zu" MAKEOPTS="-j1" PKGDIR="/var/cache/portage/packages" PORTAGE_COMPRESS="" 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="/var/cache/portage/ebuilds/gentoo" PORTDIR_OVERLAY="/var/cache/portage/ebuilds/gentoo-china /var/cache/portage/ebuilds/kde /var/cache/portage/ebuilds/gentoo-china /var/cache/portage/ebuilds/haskell /var/cache/portage/ebuilds/hardened-development /var/cache/portage/ebuilds/sunrise /var/cache/portage/ebuilds/oss-overlay /var/cache/portage/ebuilds/local" SYNC="rsync://mirror.averse.net/gentoo-portage" USE="X a52 aac acl acpi bash-completion berkdb branding bzip2 cdr cli consolekit cracklib crypt cscope cups cxx dbus doc dri dts dvd dvdr encode faac fam ffmpeg flac gdbm gif gnutls gpm hal hardened iconv ipv6 jpeg jpeg2k kde latex ldap lzma mng modules mp3 mp4 mpeg mudflap ncurses nls nptl nptlonly nsplugin ogg openexr opengl openmp oss pam pcre pdf perl pic png policykit ppds pppd python qt4 quicktime readline reflection sdl session spell spl ssl startup-notification svg sysfs tcpd tiff truetype unicode urandom v4l2 vorbis webkit win32codecs x264 x86 xml xorg xv xvid zlib" 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 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="zh_TW zh af am ar as as_IN ast az be be_BY bg bn bn_BD bn_IN bo br brx bs ca crh cs csb cy da de de_FR dgo dz el en en_CA en_GB en_US en_ZA eo es es_AR es_CL es_CR es_ES es_LA es_MX et et_EE eu fa fi fo fr fr_CA fy fy_NL ga ga_IE gl gu gu_IN he hi hi_IN hne hr hsb hu hy id is it ja ka kk km kn kn_IN ko ko_KR kok ks ku la lb lo lt lv mai mk ml ml_IN mn mni mr mr_IN ms mt my nb nb_NO nds ne nl nn nn_NO no nr ns nso oc or or_IN pa pa_IN pl pt pt_BR pt_PT rm ro ru rw sa_IN sat sd se sh sh_YU si sk sl sq sr sr@latin sr@Latn sr_CS ss st sv sv_SE sw sw_TZ ta ta_IN ta_LK te te_IN tg th ti_ER tk tl tn tr ts uk ur_IN ur_PK uz uz@cyrillic ve vi wa xh zh_CN zh_HK zh_TW zu" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="intel" Unset: CPPFLAGS, CTARGET, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
btw, I disabled mmx mmxext sse sse2 ssse3 for media-video/ffmpeg, but apparently it does not help.
Looks like a dupe of bug 290741.
I read that, too. Originally I would like to report in that bug. However: 1. they belongs to the different packages. 2. We have mmx mmxext USE for ffmpeg, but we do not for gst-plugins-ffmpeg. Even the workaround does not work here.
Well, the problem here is that this version of the plugin uses bundled ffmpeg. Before it was not, so there was no need for such an option.
And something different is, I do not experience similar problem with media-video/ffmpeg.
I have the same problem with this package, since such package was the first package to emerge in the "emerge world" queue I ended up masking it, and that allowed the "emerge world" to keep going 'till finished. I don't remember making use of such package since I use mplayer as my multimedia player but anyway I haven't noticed any problem in my gnome instance since I masked this package.
I have the same error on hardened profile (with sandbox-2.1). Is there any solution?
USE=-pic solved this for me (as suggested in bug 290741).
Just like regular ffmpeg, hardened users need mmx disabled. Can be achieved by passing --with-ffmpeg-extra-configure="--disable-mmx" to configure.
Created attachment 236901 [details] ebuild with PIE detection Makes possible to build package on x86 hardened systems with PIE enabled.
I made an ebuild with PIE detection (like in ffmpeg). It should build fine now on hardened system by disabling mmx/mmx2 optimizations.
(In reply to comment #12) > I made an ebuild with PIE detection (like in ffmpeg). It should build fine now > on hardened system by disabling mmx/mmx2 optimizations. Works for me, thanks. Hope it will be in portage soon.
This has been fixed for 3 weeks. Can this please get added to portage?
(In reply to comment #11) > Created an attachment (id=236901) [details] > ebuild with PIE detection > > Makes possible to build package on x86 hardened systems with PIE enabled. > This patch is wrong. The ffmpeg mmx/asm works fine on amd64, so if this check is to be instated, it should also check for the arch (i.e. only x86 currently breaks). Please also make this bug depend on bug #179872 since that bug is about the root couse of this problem.
i can confirm the bug with gst-plugins-ffmpeg-0.10.11-r1 and x86/10.0/desktop/kde profile. funny thing, this seems to be a very old bug, but my log shows that media-plugins/gst-plugins-ffmpeg-0.10.7 was emerged successfully on Feb 1 2010.
So after looking at this problem again this bug really is confused, but it all comes down to one thing: gst-plugins-ffmpeg ALWAYS trying to compile ffmpeg/libav with "--enable-pic", something that always fails on x86 if you have mmx/mmx2 enabled So the usage of IUSE="hardened" is wrong. What should instead be done is that either always filter mmx/mmx2 for all of x86, or better yet, remove the hardened useflag and replace it with a USE="pic". This USE="pic" should either enable or disable pic, and if pic is enabled, then disable mmx/mmx2 for USE="x86".
should be fixed in gst-plugins-ffmpeg-0.10.13_p201211 (uses system ffmpeg)