Bug 109280 - gst-plugins-ffmpeg-0.8.6 fails to build
|
Bug#:
109280
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: PPC
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: normal
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: gstreamer@gentoo.org
|
Reported By: dashnu@gmail.com
|
|
Component: GNOME
|
|
|
URL:
|
|
Summary: gst-plugins-ffmpeg-0.8.6 fails to build
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2005-10-14 08:03 0000
|
Build Fails.
powerpc-unknown-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I../..
-I../../libavcodec -fomit-frame-pointer -O2 -pipe -fno-pie -fno-pie -MT
postprocess.lo -MD -MP -MF .deps/postprocess.Tpo -c postprocess.c -fPIC -DPIC
-o .libs/postprocess.o
postprocess.c:633:42: postprocess_altivec_template.c: No such file or directory
make[8]: *** [postprocess.lo] Error 1
make[8]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6/gst-libs/ext/ffmpeg/libavcodec/libpostproc'
make[7]: *** [all-recursive] Error 1
make[7]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6/gst-libs/ext/ffmpeg/libavcodec'
make[6]: *** [all-recursive] Error 1
make[6]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6/gst-libs/ext/ffmpeg'
make[5]: *** [all] Error 2
make[5]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6/gst-libs/ext/ffmpeg'
make[4]: *** [all-local] Error 2
make[4]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6/gst-libs/ext'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6/gst-libs/ext'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6/gst-libs'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6'
make: *** [all] Error 2
Reproducible: Always
Steps to Reproduce:
1.emerge -u gst-plugins-ffmpeg
2.
3.
Actual Results:
Build failed
Expected Results:
build success
Portage 2.0.53_rc5 (default-linux/ppc/2005.1/ppc/G4, gcc-3.4.4, glibc-2.3.5-r2,
2.6.13-gentoo-r2 ppc)
=================================================================
System uname: 2.6.13-gentoo-r2 ppc 7447/7457, altivec supported
Gentoo Base System version 1.12.0_pre9
ccache version 2.4 [enabled]
dev-lang/python: 2.3.5, 2.4.2
sys-apps/sandbox: 1.2.13
sys-devel/autoconf: 2.13, 2.59-r7
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils: 2.16.1
sys-devel/libtool: 1.5.20
virtual/os-headers: 2.6.11-r2
ACCEPT_KEYWORDS="ppc ~ppc"
AUTOCLEAN="yes"
CBUILD="powerpc-unknown-linux-gnu"
CFLAGS="-O2 -pipe"
CHOST="powerpc-unknown-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config
/var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig candy ccache digest distlocks fixpackages notitles sandbox
sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X alsa altivec bash-completion berkdb bitmap-fonts cdr crypt dvd dvdr esd
gnome gpm gstreamer gtk gtk2 hal howl jpeg ncurses nptl nptlonly opengl pam perl
png ppc python readline spell ssl svg tcpd tiff truetype truetype-fonts
type1-fonts unicode xml2 zlib userland_GNU kernel_linux elibc_glibc"
Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
I am having the same problem as well. It appears that there is a file missing
from the source tree, postprocess_altivec_template.c. I have searched my system
for it and it cannot be found.
powerpc-unknown-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I../..
-I../../libavcodec -fomit-frame-pointer -O2 -mcpu=7450 -mtune=powerpc -pipe
-fno-strict-aliasing -maltivec -mabi=altivec -mpowerpc-gfxopt -fno-pie -fno-pie
-MT postprocess.lo -MD -MP -MF .deps/postprocess.Tpo -c postprocess.c -fPIC
-DPIC -o .libs/postprocess.o
postprocess.c:633:42: postprocess_altivec_template.c: No such file or directory
make[8]: *** [postprocess.lo] Error 1
make[8]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6/gst-libs/ext/ffmpeg/libavcodec/libpostproc'
make[7]: *** [all-recursive] Error 1
make[7]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6/gst-libs/ext/ffmpeg/libavcodec'
make[6]: *** [all-recursive] Error 1
make[6]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6/gst-libs/ext/ffmpeg'
make[5]: *** [all] Error 2
make[5]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6/gst-libs/ext/ffmpeg'
make[4]: *** [all-local] Error 2
make[4]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6/gst-libs/ext'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6/gst-libs/ext'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6/gst-libs'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/var/tmp/portage/gst-plugins-ffmpeg-0.8.6/work/gst-ffmpeg-0.8.6'
make: *** [all] Error 2
Portage 2.0.53_rc7 (default-linux/ppc/2005.1/ppc/G4, gcc-3.4.4, glibc-2.3.5-r3,
2.6.14-gentoo ppc)
=================================================================
System uname: 2.6.14-gentoo ppc 7455, altivec supported
Gentoo Base System version 1.12.0_pre9
dev-lang/python: 2.3.5, 2.4.2
sys-apps/sandbox: 1.2.13
sys-devel/autoconf: 2.13, 2.59-r7
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils: 2.16.1
sys-devel/libtool: 1.5.20
virtual/os-headers: 2.6.11-r2
ACCEPT_KEYWORDS="ppc ~ppc"
AUTOCLEAN="yes"
CBUILD="powerpc-unknown-linux-gnu"
CFLAGS="-O2 -mcpu=7450 -mtune=powerpc -pipe -fno-strict-aliasing -maltivec
-mabi=altivec -mpowerpc-gfxopt"
CHOST="powerpc-unknown-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -mcpu=7450 -mtune=powerpc -pipe -fno-strict-aliasing -maltivec
-mabi=altivec -mpowerpc-gfxopt"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.netnitco.net
ftp://gentoo.netnitco.net/pub/mirrors/gentoo/source/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="ppc X aac aim aimextras alsa altivec apache2 applet artworkextra audiofile
automount bash-completion berkdb bitmap-fonts bonobo bootsplash browserplugin
bzip2 c++ cdda cddb cdparanoia cdrom chroot clamav clamd cpudetection cracklib
crypt cscope cups curlwrappers dbus doc dri dvd dvdread eds emboss encode esd
ethereal fam fat fbcon fbsplash ffmpeg fftw firefox font-server fontconfig
foomaticdb fortran freetype gd gif gimp gimpprint glx gnome gnome-print
gnomecanvas gnutls gpm gstreamer gtk gtk2 gtkhtml gvim gzip hal hfs howl
ieee1394 image imlib imlib2 javascript jpeg lame lcd lesstif libclamav libwww
logrotate messages mjpeg motif mozdevelop moznocompose moznoirc moznomail
mozsha1 mozsvg mozxmlterm mp3 mp4live mpeg mpeg2 mpeg4 mplayer msn nautilus
ncurses netbeans nethack new-login nfs nls nocardbus nptl nptlonly nsplugin ntfs
offensive ogg oggvorbis on-the-fly-crypt opengl openssh openssl pam pbbuttonsd
pcre pdf pdflib perl png ppds python qt quicktime readline reiserfs servlet-2.3
servlet-2.4 sndfile sounds sox spamassassin spell ssl svg tcpd theora threads
thumbnail tiff truetype truetype-fonts type1 type1-fonts udev unicode urandom
usb userlocales utf8 v4l2 vcd videos vim vim-pager vim-with-x vnc vorbis wifi
xinerama xinetd xml xml2 xosd xpm xprint xscreensaver xv xvid yahoo yv12 zip
zlib userland_GNU kernel_linux elibc_glibc"
Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY
I have also tried turning off the "cpudetection" USE flag to see if that would
fix the problem, but alas it does not. It seems that there is some sort of
problem with renaming the file "postprocess_template.c" when called based on
architecture. Here is a snippet of code that applies to the altivec section
from postprocess.c:
Lines 628-636
#ifdef ARCH_POWERPC
#ifdef COMPILE_ALTIVEC
#undef RENAME
#define HAVE_ALTIVEC
#define RENAME(a) a ## _altivec
#include "postprocess_altivec_template.c"
#include "postprocess_template.c"
#endif
#endif //ARCH_POWERPC
I'm wondering if taking out the #include "postprocess_altivec_template.c" line
would fix the problem. I'll be the first to admit that I'm not a heavy C coder,
so I'm not sure. I'm going to give it a whirl and see what happens.
Draeven
Created an attachment (id=72027) [details]
Proposed patch for gst-plugins-ffmpeg-0.8.6
Ok, I've patched postprocess.c with the attached patch. I was able to get to
compile fairly cleanly, the only problem I had when it finished was:
ERROR: Caught a segmentation fault while loading plugin file:
/usr/lib/gstreamer-0.8/libgstvideotestsrc.so
Please either:
- remove it and restart.
- run with --gst-disable-segtrap and debug.
I don't know if this is critical or not, but it is merged into my world file at
this time.
Draeven
With that being said, and that segmentation fault being a liboil issue, is this
patch a viable workaround or is it more or less just a lucky hack on my part?
If it is a viable workaround, can it be included in the next ebuild?
I'm just more or less curious at this point, as I am just starting to learn C.
Thanks,
Draeven
gst-plugins-ffmpeg-0.8.7 compiles fine on ppc, and I think it works too - I'm
not sure how to specifically test it though. Once 0.8.7 is in portage I guess it
should be marked ~ppc while 0.8.6 should be -ppc.