[mythtv-users] Mythtv CVS possibly borked on amd64
Kevin Kuphal
kuphal at dls.net
Wed Dec 29 15:07:13 UTC 2004
Chris Germano wrote:
> I'm trying to compile Mythtv CVS on an amd64 and it's failing. It
> compiled fine a few weeks ago so I don't know what's up. I tried the
> -fPIC thing in my cflags but it still did this, and i did make clean,
> etc. I'm running Gentoo 64 on a amd 64 3200.
>
> gcc -c -pipe -w -O3 -march=k8 -fomit-frame-pointer -fPIC -O3 -Wall
> -DPIC -fPIC -fomit-frame-pointer -DHAVE_AV_CONFIG_H -I..
> -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -D_REENTRANT
> -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DPREFIX=\"/usr/local\" -DMMX
> -DCONFIG_VIDEO4LINUX -DLCD_DEVICE -DUSING_OSS -DUSING_OPENGL_VSYNC
> -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -I/usr/qt/3/mkspecs/linux-g++ -I.
> -I../.. -I/usr/qt/3/include -o simple_idct_mmx.o i386/simple_idct_mmx.c
> gcc -c -pipe -w -O3 -march=k8 -fomit-frame-pointer -fPIC -O3 -Wall
> -DPIC -fPIC -fomit-frame-pointer -DHAVE_AV_CONFIG_H -I..
> -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -D_REENTRANT
> -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DPREFIX=\"/usr/local\" -DMMX
> -DCONFIG_VIDEO4LINUX -DLCD_DEVICE -DUSING_OSS -DUSING_OPENGL_VSYNC
> -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -I/usr/qt/3/mkspecs/linux-g++ -I.
> -I../.. -I/usr/qt/3/include -o fft_sse.o i386/fft_sse.c
> gcc -c -pipe -w -O3 -march=k8 -fomit-frame-pointer -fPIC -O3 -Wall
> -DPIC -fPIC -fomit-frame-pointer -DHAVE_AV_CONFIG_H -I..
> -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -D_REENTRANT
> -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DPREFIX=\"/usr/local\" -DMMX
> -DCONFIG_VIDEO4LINUX -DLCD_DEVICE -DUSING_OSS -DUSING_OPENGL_VSYNC
> -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -I/usr/qt/3/mkspecs/linux-g++ -I.
> -I../.. -I/usr/qt/3/include -o vp3dsp_mmx.o i386/vp3dsp_mmx.c
> gcc -c -pipe -w -O3 -march=k8 -fomit-frame-pointer -fPIC -O3 -Wall
> -DPIC -fPIC -fomit-frame-pointer -DHAVE_AV_CONFIG_H -I..
> -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -D_REENTRANT
> -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DPREFIX=\"/usr/local\" -DMMX
> -DCONFIG_VIDEO4LINUX -DLCD_DEVICE -DUSING_OSS -DUSING_OPENGL_VSYNC
> -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -I/usr/qt/3/mkspecs/linux-g++ -I.
> -I../.. -I/usr/qt/3/include -o vp3dsp_sse2.o i386/vp3dsp_sse2.c
> rm -f libmythavcodec-0.16.so.0.16.0 libmythavcodec-0.16.so
> libmythavcodec-0.16.so.0 libmythavcodec-0.16.so.0.16
> g++ -Wl,-rpath,/usr/qt/3/lib -shared
> -Wl,-soname,libmythavcodec-0.16.so.0 -o libmythavcodec-0.16.so.0.16.0
> common.o utils.o mem.o allcodecs.o mpegvideo.o h263.o jrevdct.o
> jfdctfst.o mpegaudio.o ac3enc.o mjpeg.o audresample.o dsputil.o
> motion_est.o imgconvert.o imgresample.o msmpeg4.o mpeg12.o h263dec.o
> svq1.o rv10.o mpegaudiodec.o pcm.o simple_idct.o ratecontrol.o adpcm.o
> eval.o jfdctint.o dv.o error_resilience.o wmadec.o fft.o mdct.o mace.o
> huffyuv.o opts.o cyuv.o golomb.o h264.o raw.o indeo3.o asv1.o vp3.o
> 4xm.o cabac.o ra144.o ra288.o vcr1.o cljr.o roqvideo.o dpcm.o tscc.o
> interplayvideo.oxan.o rpza.o cinepak.o msrle.o msvideo1.o vqavideo.o
> idcinvideo.o adx.o rational.o faandct.o snow.o sonic.o 8bps.o parser.o
> smc.o flicvideo.o truemotion1.o vmdav.o lcl.o qtrle.o g726.o flac.o
> vp3dsp.o integer.o h261.o resample2.o h264idct.o png.o pnm.o qdrw.o
> qpeg.o rangecoder.o ulti.o xl.o postprocess.o a52dec.o bit_allocate.o
> bitstream.o downmix.o imdct.oparse.o crc.o resample.o fdct_mmx.o
> cputest.o dsputil_mmx.o mpegvideo_mmx.o idct_mmx.o motion_est_mmx.o
> simple_idct_mmx.o fft_sse.o vp3dsp_mmx.o vp3dsp_sse2.o
> -L/usr/qt/3/lib -L/usr/X11R6/lib -lqt-mt -lXext -lX11 -lm -lpthread
> /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.2/../../../../x86_64-pc-linux-gnu/bin/ld:
> postprocess.o: relocation R_X86_64_32S against `a local symbol' can
> not be used when making a shared object; recompile with -fPIC
> postprocess.o: could not read symbols: Bad value
> collect2: ld returned 1 exit status
> make: *** [libmythavcodec-0.16.so.0.16.0] Error 1
The answer has been posted to the list a couple times in the last
month. You need to add --disable-mmx to your configure line. I believe
there is a patch against the ffmpeg source that fixed this but Isaac
needs to include an ffmpeg resync to our code for it to be included.
Kevin
More information about the mythtv-users
mailing list