Re: Re: Building ffmpeg --enable-shared
> On Thu, Apr 14, 2005 at 02:08:09PM +0200, Lorenzo Milesi wrote:
> > Hi
> > I'm getting and error trying to compile ffmpeg with the enable-shared
> > configure option.
> > The latest lines are these
> [...]
> > /usr/bin/ld: i386/dsputil_mmx.o: relocation R_X86_64_32S can not be
> > used when making a shared object; recompile with -fPIC
> > i386/dsputil_mmx.o: could not read symbols: Bad value
> > collect2: ld returned 1 exit status
> > make: *** [libavcodec.so] Error 1
>
> You can not make shared libraries without PIC on amd64, while
> you can on i386. This means either that the assembler is not
> PIC, or it was not compiled using -fPIC. dsputil_mmx.o is the
> first file it found that doesn't have PIC, they're might be
> others.
>
>
> Kurt
>
>
There are a few other files. It has to do with global constants used in
inline assembly. Use -save-temps to see what line it is in the
offending assembly (not that easy after macro expansion). I posted a
message to this list fall 2004 on how to work around it.
Fred
________________________________________________________________________
Reply to: