error from ./configure of zoneminder regarding ffmpeg
Posted: Tue Dec 23, 2008 6:12 pm
i have compiled and installed ffmpeg from svn then i have tried to ./configure zoneminder and it can't use libavcodec.a and libavformat.a i have opened config.log file and i heve found this:
### libavcodec error #####
configure:5207: checking for avcodec_init in -lavcodec
configure:5242: g++ -o conftest -g -O2 -L/usr/lib -L/usr/lib/mysql conftest.cpp -lavcodec -lavutil -lpcre -lcrypto -lmysqlclient -lpthread -ldl -lz -ljpeg >&5
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x1fb): In function `ff_xvid_rate_control_init':
libavcodec/libxvid_rc.c:80: undefined reference to `xvid_plugin_2pass2'
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x350): In function `ff_xvid_rate_estimate_qscale':
libavcodec/libxvid_rc.c:119: undefined reference to `xvid_plugin_2pass2'
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x386):libavcodec/libxvid_rc.c:127: undefined reference to `xvid_plugin_2pass2'
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x47b): In function `ff_xvid_rate_control_uninit':
libavcodec/libxvid_rc.c:146: undefined reference to `xvid_plugin_2pass2'
collect2: ld returned 1 exit status
configure:5248: $? = 1
configure: failed program was:
| /* confdefs.h. */
| #define PACKAGE_NAME "zm"
| #define PACKAGE_TARNAME "ZoneMinder"
| #define PACKAGE_VERSION "1.24.0"
| #define PACKAGE_STRING "zm 1.24.0"
| #define PACKAGE_BUGREPORT "support@zoneminder.com"
| #define PACKAGE "ZoneMinder"
| #define VERSION "1.24.0"
| #define ZM_MEM_MAPPED 0
| #define HAVE_LIBJPEG 1
| #define HAVE_LIBZ 1
| #define HAVE_LIBDL 1
| #define HAVE_LIBPTHREAD 1
| #define HAVE_LIBMYSQLCLIENT 1
| #define HAVE_LIBCRYPTO 1
| #define HAVE_LIBPCRE 1
| #define HAVE_LIBAVUTIL 1
| /* end confdefs.h. */
|
| /* Override any GCC internal prototype to avoid an error.
| Use char because int might match the return type of a GCC
| builtin and then its argument prototype would still apply. */
| #ifdef __cplusplus
| extern "C"
| #endif
| char avcodec_init ();
| int
| main ()
| {
| return avcodec_init ();
| ;
| return 0;
| }
configure:5266: result: no
configure:5276: WARNING: libavcodec.a is required for MPEG streaming
#### libavformat error #########
configure:5281: checking for av_new_stream in -lavformat
configure:5316: g++ -o conftest -g -O2 -L/usr/lib -L/usr/lib/mysql conftest.cpp -lavformat -lavcodec -lavutil -lpcre -lcrypto -lmysqlclient -lpthread -ldl -lz -ljpeg >&5
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x1fb): In function `ff_xvid_rate_control_init':
libavcodec/libxvid_rc.c:80: undefined reference to `xvid_plugin_2pass2'
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x350): In function `ff_xvid_rate_estimate_qscale':
libavcodec/libxvid_rc.c:119: undefined reference to `xvid_plugin_2pass2'
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x386):libavcodec/libxvid_rc.c:127: undefined reference to `xvid_plugin_2pass2'
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x47b): In function `ff_xvid_rate_control_uninit':
libavcodec/libxvid_rc.c:146: undefined reference to `xvid_plugin_2pass2'
collect2: ld returned 1 exit status
configure:5322: $? = 1
configure: failed program was:
| /* confdefs.h. */
| #define PACKAGE_NAME "zm"
| #define PACKAGE_TARNAME "ZoneMinder"
| #define PACKAGE_VERSION "1.24.0"
| #define PACKAGE_STRING "zm 1.24.0"
| #define PACKAGE_BUGREPORT "support@zoneminder.com"
| #define PACKAGE "ZoneMinder"
| #define VERSION "1.24.0"
| #define ZM_MEM_MAPPED 0
| #define HAVE_LIBJPEG 1
| #define HAVE_LIBZ 1
| #define HAVE_LIBDL 1
| #define HAVE_LIBPTHREAD 1
| #define HAVE_LIBMYSQLCLIENT 1
| #define HAVE_LIBCRYPTO 1
| #define HAVE_LIBPCRE 1
| #define HAVE_LIBAVUTIL 1
| /* end confdefs.h. */
|
| /* Override any GCC internal prototype to avoid an error.
| Use char because int might match the return type of a GCC
| builtin and then its argument prototype would still apply. */
| #ifdef __cplusplus
| extern "C"
| #endif
| char av_new_stream ();
| int
| main ()
| {
| return av_new_stream ();
| ;
| return 0;
| }
configure:5340: result: no
configure:5350: WARNING: libavformat.a is required for MPEG streaming
##########################
P.S. i have compiled ffmpeg with :
##########################
./configure --prefix=/usr --enable-libmp3lame --enable-libfaad --enable-libfaac --enable-libvorbis --enable-libx264 --enable-libxvid --enable-x11grab --enable-postproc --enable-gpl --enable-nonfree --enable-swscale --enable-avfilter --enable-xvmc --enable-zlib --enable-bzlib
### libavcodec error #####
configure:5207: checking for avcodec_init in -lavcodec
configure:5242: g++ -o conftest -g -O2 -L/usr/lib -L/usr/lib/mysql conftest.cpp -lavcodec -lavutil -lpcre -lcrypto -lmysqlclient -lpthread -ldl -lz -ljpeg >&5
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x1fb): In function `ff_xvid_rate_control_init':
libavcodec/libxvid_rc.c:80: undefined reference to `xvid_plugin_2pass2'
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x350): In function `ff_xvid_rate_estimate_qscale':
libavcodec/libxvid_rc.c:119: undefined reference to `xvid_plugin_2pass2'
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x386):libavcodec/libxvid_rc.c:127: undefined reference to `xvid_plugin_2pass2'
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x47b): In function `ff_xvid_rate_control_uninit':
libavcodec/libxvid_rc.c:146: undefined reference to `xvid_plugin_2pass2'
collect2: ld returned 1 exit status
configure:5248: $? = 1
configure: failed program was:
| /* confdefs.h. */
| #define PACKAGE_NAME "zm"
| #define PACKAGE_TARNAME "ZoneMinder"
| #define PACKAGE_VERSION "1.24.0"
| #define PACKAGE_STRING "zm 1.24.0"
| #define PACKAGE_BUGREPORT "support@zoneminder.com"
| #define PACKAGE "ZoneMinder"
| #define VERSION "1.24.0"
| #define ZM_MEM_MAPPED 0
| #define HAVE_LIBJPEG 1
| #define HAVE_LIBZ 1
| #define HAVE_LIBDL 1
| #define HAVE_LIBPTHREAD 1
| #define HAVE_LIBMYSQLCLIENT 1
| #define HAVE_LIBCRYPTO 1
| #define HAVE_LIBPCRE 1
| #define HAVE_LIBAVUTIL 1
| /* end confdefs.h. */
|
| /* Override any GCC internal prototype to avoid an error.
| Use char because int might match the return type of a GCC
| builtin and then its argument prototype would still apply. */
| #ifdef __cplusplus
| extern "C"
| #endif
| char avcodec_init ();
| int
| main ()
| {
| return avcodec_init ();
| ;
| return 0;
| }
configure:5266: result: no
configure:5276: WARNING: libavcodec.a is required for MPEG streaming
#### libavformat error #########
configure:5281: checking for av_new_stream in -lavformat
configure:5316: g++ -o conftest -g -O2 -L/usr/lib -L/usr/lib/mysql conftest.cpp -lavformat -lavcodec -lavutil -lpcre -lcrypto -lmysqlclient -lpthread -ldl -lz -ljpeg >&5
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x1fb): In function `ff_xvid_rate_control_init':
libavcodec/libxvid_rc.c:80: undefined reference to `xvid_plugin_2pass2'
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x350): In function `ff_xvid_rate_estimate_qscale':
libavcodec/libxvid_rc.c:119: undefined reference to `xvid_plugin_2pass2'
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x386):libavcodec/libxvid_rc.c:127: undefined reference to `xvid_plugin_2pass2'
/usr/lib/libavcodec.a(libxvid_rc.o)(.text+0x47b): In function `ff_xvid_rate_control_uninit':
libavcodec/libxvid_rc.c:146: undefined reference to `xvid_plugin_2pass2'
collect2: ld returned 1 exit status
configure:5322: $? = 1
configure: failed program was:
| /* confdefs.h. */
| #define PACKAGE_NAME "zm"
| #define PACKAGE_TARNAME "ZoneMinder"
| #define PACKAGE_VERSION "1.24.0"
| #define PACKAGE_STRING "zm 1.24.0"
| #define PACKAGE_BUGREPORT "support@zoneminder.com"
| #define PACKAGE "ZoneMinder"
| #define VERSION "1.24.0"
| #define ZM_MEM_MAPPED 0
| #define HAVE_LIBJPEG 1
| #define HAVE_LIBZ 1
| #define HAVE_LIBDL 1
| #define HAVE_LIBPTHREAD 1
| #define HAVE_LIBMYSQLCLIENT 1
| #define HAVE_LIBCRYPTO 1
| #define HAVE_LIBPCRE 1
| #define HAVE_LIBAVUTIL 1
| /* end confdefs.h. */
|
| /* Override any GCC internal prototype to avoid an error.
| Use char because int might match the return type of a GCC
| builtin and then its argument prototype would still apply. */
| #ifdef __cplusplus
| extern "C"
| #endif
| char av_new_stream ();
| int
| main ()
| {
| return av_new_stream ();
| ;
| return 0;
| }
configure:5340: result: no
configure:5350: WARNING: libavformat.a is required for MPEG streaming
##########################
P.S. i have compiled ffmpeg with :
##########################
./configure --prefix=/usr --enable-libmp3lame --enable-libfaad --enable-libfaac --enable-libvorbis --enable-libx264 --enable-libxvid --enable-x11grab --enable-postproc --enable-gpl --enable-nonfree --enable-swscale --enable-avfilter --enable-xvmc --enable-zlib --enable-bzlib