[Ffmpeg-devel] Compiling FFMPEG under local diretory with mp3lame enabled

Suan_ZHU suansworks
Mon Nov 20 10:52:43 CET 2006


Hello all,

I have two accounts for running a video processing site. One is a managed
server, which means that I have no root user privileges and can not install
any software or files into the usr/bin/ directory. Which means that make
install command for any packages will not work.

for example, I compiled lame version 3.97 locally and tries to make install
it onto the root, the following commands printed out:

 make install
Making install in mpglib
make[1]: Entering directory `/homepages/7/d149256497/htdocs/lame- 3.97
/mpglib'
make[2]: Entering directory `/homepages/7/d149256497/htdocs/lame-3.97
/mpglib'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/homepages/7/d149256497/htdocs/lame- 3.97
/mpglib'
make[1]: Leaving directory `/homepages/7/d149256497/htdocs/lame-3.97/mpglib'
Making install in libmp3lame
make[1]: Entering directory `/homepages/7/d149256497/htdocs/lame-3.97
/libmp3lame'
Making install in i386
make[2]: Entering directory `/homepages/7/d149256497/htdocs/lame-3.97
/libmp3lame/i386'
make[3]: Entering directory `/homepages/7/d149256497/htdocs/lame-3.97
/libmp3lame/i386'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/homepages/7/d149256497/htdocs/lame-3.97
/libmp3lame/i386'
make[2]: Leaving directory
`/homepages/7/d149256497/htdocs/lame-3.97/libmp3lame/i386'

make[2]: Entering directory `/homepages/7/d149256497/htdocs/lame-3.97
/libmp3lame'
make[3]: Entering directory `/homepages/7/d149256497/htdocs/lame-3.97
/libmp3lame'
test -z "/usr/local/lib" || mkdir -p -- "/usr/local/lib"
 /bin/sh ../libtool --mode=install /usr/bin/install -c  'libmp3lame.la'
'/usr/local/lib/libmp3lame.la'
/usr/bin/install -c .libs/libmp3lame.so.0.0.0
/usr/local/lib/libmp3lame.so.0.0.0

/usr/bin/install: cannot create regular file
`/usr/local/lib/libmp3lame.so.0.0.0': Permission denied
make[3]: *** [install-libLTLIBRARIES] Error 1
make[3]: Leaving directory `/homepages/7/d149256497/htdocs/lame- 3.97
/libmp3lame'
make[2]: *** [install-am] Error 2
make[2]: Leaving directory `/homepages/7/d149256497/htdocs/lame-3.97
/libmp3lame'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory `/homepages/7/d149256497/htdocs/lame- 3.97
/libmp3lame'
make: *** [install-recursive] Error 1
u39510715:~/lame-3.97 >
u39510715:~/lame-3.97 > find -name /usr/local/lib/libmp3lame.so.0.0.0
u39510715:~/lame-3.97 > find -name /usr/local/lib/libmp3lame.so
u39510715:~/lame-3.97 > find -name libmp3lame.so
./libmp3lame/.libs/libmp3lame.so

after I compiled mp3lame library locally under my machine, I put ffmpeg
under lame library,
and I first compiled ffmpeg, I get the following error:

>lame/lame.h: file does not found

after I modied the file and changed the line <lame/lame.h> to
"../lib/lame.h"


I compiled again, and I get the following error:

u39510715:~/lame- 3.97/ffmpeg > make
make -C libavutil all
make[1]: Entering directory `/homepages/7/d149256497/htdocs/lame-3.97
/ffmpeg/libavutil'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/homepages/7/d149256497/htdocs/lame- 3.97
/ffmpeg/libavutil'
make -C libavcodec all
make[1]: Entering directory `/homepages/7/d149256497/htdocs/lame-3.97
/ffmpeg/libavcodec'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/homepages/7/d149256497/htdocs/lame- 3.97
/ffmpeg/libavcodec'
make -C libavformat all
make[1]: Entering directory `/homepages/7/d149256497/htdocs/lame-3.97
/ffmpeg/libavformat'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/homepages/7/d149256497/htdocs/lame- 3.97
/ffmpeg/libavformat'
gcc -Wl,--warn-common -rdynamic -g -o ffmpeg_g ffmpeg.o
cmdutils.o-L./libavformat -lavformat -L./libavcodec -lavcodec
-L./libavutil -lavutil
-lm -lmp3lame -lz -ldl
/usr/bin/ld: cannot find -lmp3lame
collect2: ld returned 1 exit status
make: *** [ffmpeg_g] Error 1


it seems that FFMPEG tries to find the file libmp3lame.so under usr/bin/
of course, I am not allow to copy file into that directory, I do find such
file under my local
lame-3.97/libmp3lame/.libs/  directory


my question is that is it possible that I could compile FFMPEG locally with
mp3lame enabled?
I may need to modify the make file or configuration so that FFMPEG will
recognize the location of libmp3lame.so under
./libmp3lame/.libs/libmp3lame.so ?????


I am not too sure what I should do in this case?
should I go to libavformat and modify the makefile and, in general, is it
possible to compile FFMPEG with LAME located only at the local directory.

please help!!

thanks and appreciated.




More information about the ffmpeg-devel mailing list