[FFmpeg-devel] Question about -fPIC usage for some files

Thorsten Jordan tjordan
Fri Feb 8 11:43:48 CET 2008


as posted monthes ago i need to compile ffmpeg with -fPIC for some
reasons, but it doesn't work for 3 files in libavcodec/i386/
(i686, Core2 Duo). So far i patched the files or disabled some code to
make it work.

I just tried a different approach with current SVN version, manually
compile the 3 files without -fPIC and rest with -fPIC.
I wonder if the resulting .so can be at least partially shared between

The test results - by looking at free memory without buffers and cache
after loading the whole software, that has 5 processes using ffmpeg -
show that this seems to be the case. RAM usage is not worse than older
ffmpeg compilations with fully -fPIC.

My question is if these results are realistic, can .so libs be built in
a way so only parts of it (some .o's) don't use -fPIC and the rest uses
it, and sharing of these parts still work? It seems so, but i'd like to
be sure on this and here are certainly some experts around :-)

Beside that RAM usage was even lower than that of a version of january
8th 2008, so your work of making tables static/const indeed worked out.

Would it be of public interest to have some add-ons to the Makefile so
some files can have different c-flags than the rest? (e.g. of course
-fPIC or not)

Thanks in advance for comments about that matter

Greetings, Thorsten

More information about the ffmpeg-devel mailing list