LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (http://www.linuxquestions.org/questions/linux-software-2/)
-   -   compiling software without libc dependency (http://www.linuxquestions.org/questions/linux-software-2/compiling-software-without-libc-dependency-509177/)

augustocv 12-10-2006 03:39 PM

compiling software without libc dependency
 
Hi,

I'm trying to compile Ffmpeg on my home box to upload it later
to a host on 1and1.com.

The thing is, 1and1's libc version is 2.2.5, and when I run the
executable I compiled it asks for libc >= 2.3. My libc is 2.3.4.

I tried compiling Ffmpeg there and on another system that had the same
libc version (2.2.5), but then when I run the executable I get a SegFault.

So, my question is if there is a way to kind of bundle my libc to the executable
and make it use it instead of the system's one.

Would I have to get libc's source and compile it on my system to accomplish that?

I'm using Slackware 10.1 with the libc that comes with it (2.3.4).
Both my architecture and 1and1's is x86.

Thanks in advance for any help and thoughts.

Augusto

Andrew Benton 12-10-2006 04:35 PM

Have you tried passing the options `--enable-static --disable-shared' to the configure script?

augustocv 12-10-2006 05:09 PM

I was configuring Ffmpeg with ./configure ... --disable-shared,
I tried to specify --enable-static now but there was no difference.

Electro 12-10-2006 06:29 PM

From an example of ffmpeg ebuild file. Try using "--disable-shared-pp --disable-shared --enable-static". You may also have to use --enable-gpl. Third try to include --extra-ldflags=-fomit-frame-pointer.

augustocv 12-10-2006 06:52 PM

I've built lame, xvid and faad under the /home/augusto/fmpeg prefix.
The options to Ffmpeg configure script I've used were these ones:
(by the way, there is no --disable-shared-pp option)

./configure --prefix=/home/augusto/fmpeg --enable-mp3lame --enable-faad --enable-xvid --enable-gpl --disable-ffserver --disable-ffplay --disable-debug --disable-shared --enable-static --extra-cflags="-I/home/augusto/fmpeg/include -fomit-frame-pointer" --extra-ldflags=-L/home/augusto/fmpeg/lib

Then I compiled it on Slack 10.1 (glib 2.3.4) and tried to run on Slack 8.1 (glib 2.2.5). Ffmpeg complains about the glib version and quits:

./ffmpeg_static: /lib/libc.so.6: version `GLIBC_2.3' not found (required by ./ffmpeg_static)

I think what I'm trying to do is explained on this thread, but I having trouble understanding some steps:
http://sources.redhat.com/ml/glibc-l.../msg00012.html


All times are GMT -5. The time now is 08:05 AM.