Am Sonntag, den 17.06.2007, 11:28 +0100 schrieb J.P. Casainho:
On the last 2 days, I tried to build Cinelerra on my new 64bits system, one 
> Core 2 Duo from Intel.
> 
> I always got this error: "/usr/bin/ld: 
> ffmpeg/libavcodec/.libs/libavcodec.a(simple_idct_mmx.o): relocation 
> R_X86_64_32 against `a local symbol' can not be used when making a shared 
> object; recompile with -fPIC
> ffmpeg/libavcodec/.libs/libavcodec.a(simple_idct_mmx.o) ..."
> 
> I tried with option "--with-external-ffmpeg", but got another error later :-(
> 
> 
Hello,

yes, thats a very common problem on 64bit systems. See my other mail
"Compiling problems, Debian, AMD64, -fPIC" some weeks ago (with a patch).

Base line is: obviosely, generating PositionIndependentCode for a thing
like Cinelerra doesn't make much sense, thus the inclination to compile
with -fpic. 
BUT, you link against lots of system libs, which are commonly build with -fPIC 
(because thats just what PIC is for, shareing lib objects in memory...). So for 
practical reasons you want to compile *everything*
as PIC, and to be successfull, you need to make the small change to
the internal ffmpeg subdirectory, otherwhise you won't ever be able
to link.


> Note: I already build several times on my old i386... and I did build the 
> same 
> version in my this new system, but, in a Linux Ubuntu i386 version instead of 
> the 64bits version.
> 
does this mean you are on a debian or ubuntu system?
Then you could check out my "private" debian/ubuntu package which
I setup last week. I would be glad if someone tested it, so please
tell me if interested.

Cheers,
Hermann Vosseler

_______________________________________________
Cinelerra mailing list
[email protected]
https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra

Reply via email to