Compilation Error Updated FFMPEG


#1

Hello All,

I am trying to make newest "libffmpeg.jnilib" on Mac OSX.
I am using SVN updated ffmpeg sources. When I try to make, I get the
following error.

Anyone encounter similar problem ? Thank you -

make
gcc -DJNI_IMPLEMENTATION
-I/System/Library/Frameworks/JavaVM.framework/include -I/usr/local/ffmpeg
-I/System/Library/Frameworks/JavaVM.framework/Headers/
net_java_sip_communicator_impl_neomedia_codec_video_FFMPEG.c -dynamiclib
-Wl,-read_only_relocs,suppress -o libffmpeg.jnilib
-L/usr/local/ffmpeg/libavformat -L/usr/local/ffmpeg/libavcodec
-L/usr/local/ffmpeg/libavutil -L/usr/local/ffmpeg/libswscale
-L/usr/local/x264 -lavformat -lavcodec -lavutil -lswscale -lx264
net_java_sip_communicator_impl_neomedia_codec_video_FFMPEG.c: In function
‘image_convert’:
net_java_sip_communicator_impl_neomedia_codec_video_FFMPEG.c:413: warning:
passing argument 2 of ‘sws_scale’ from incompatible pointer type
ld: warning: -read_only_relocs cannot be used *with x86_64*
Undefined symbols:
  "_compress", referenced from:
      _encode_strip in libavcodec.a(tiffenc.o)
  "_uncompress", referenced from:
    ::::::::::::::::::::::::::::::::
    ::::::::::::::::::::::::::::::::
    ::::::::::::::::::::::::::::::::
    ::::::::::::::::::::::::::::::::

ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [libffmpeg.jnilib] Error 1


#2

Hi,

After some googling, this problem happen on other projects (apache, ...). Try adding -lz (be sure to have libz installed) in Makefile in the line after "-lx264".

If you use latest tip of tree of ffmpeg rather than revision specified in src/native/ffmpeg/README, SIP Communicator may not work correctly because we base our JNI code with an older revision. Anyway if you manage to build up-to-date x264/ffmpeg sources and make it run with SIP Communicator we are interrested :).

Regards,

···

--
Seb

On 01/04/2010 04:48, Pujan Srivastava wrote:

Hello All,

I am trying to make newest "libffmpeg.jnilib" on Mac OSX.
I am using SVN updated ffmpeg sources. When I try to make, I get the following error.

Anyone encounter similar problem ? Thank you -

make
gcc -DJNI_IMPLEMENTATION -I/System/Library/Frameworks/JavaVM.framework/include -I/usr/local/ffmpeg -I/System/Library/Frameworks/JavaVM.framework/Headers/ net_java_sip_communicator_impl_neomedia_codec_video_FFMPEG.c -dynamiclib -Wl,-read_only_relocs,suppress -o libffmpeg.jnilib -L/usr/local/ffmpeg/libavformat -L/usr/local/ffmpeg/libavcodec -L/usr/local/ffmpeg/libavutil -L/usr/local/ffmpeg/libswscale -L/usr/local/x264 -lavformat -lavcodec -lavutil -lswscale -lx264
net_java_sip_communicator_impl_neomedia_codec_video_FFMPEG.c: In function �image_convert�:
net_java_sip_communicator_impl_neomedia_codec_video_FFMPEG.c:413: warning: passing argument 2 of �sws_scale� from incompatible pointer type
ld: warning: -read_only_relocs cannot be used *with x86_64*
Undefined symbols:
  "_compress", referenced from:
      _encode_strip in libavcodec.a(tiffenc.o)
  "_uncompress", referenced from:
    ::::::::::::::::::::::::::::::::

ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [libffmpeg.jnilib] Error 1