Ich habe versucht, alle Versionen von 2.4 zu bauen, und sie alle scheitern beim "Linking CXX ausführbare ../../bin/opencv_test_core" mit:
/usr/local/lib/libavcodec.so.54: undefined reference to `av_opt_set@LIBAVUTIL_51'
/usr/local/lib/libavformat.so.54: undefined reference to `av_strcasecmp@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_bprint_finalize@LIBAVUTIL_51'
/usr/local/lib/libavformat.so.54: undefined reference to `av_timecode_make_smpte_tc_string@LIBAVUTIL_51'
/usr/local/lib/libavformat.so.54: undefined reference to `av_timecode_make_string@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_realloc_f@LIBAVUTIL_51'
/usr/local/lib/libavformat.so.54: undefined reference to `av_timecode_get_smpte_from_framenum@LIBAVUTIL_51'
/usr/local/lib/libavformat.so.54: undefined reference to `av_timecode_init@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_samples_set_silence@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_calloc@LIBAVUTIL_51'
/usr/local/lib/libavformat.so.54: undefined reference to `av_opt_get@LIBAVUTIL_51'
/usr/local/lib/libavformat.so.54: undefined reference to `av_strncasecmp@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_samples_fill_arrays@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_get_media_type_string@LIBAVUTIL_51'
/usr/local/lib/libavformat.so.54: undefined reference to `av_dynarray_add@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_bprint_init@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_asprintf@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_sample_fmt_is_planar@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_samples_get_buffer_size@LIBAVUTIL_51'
/usr/local/lib/libavformat.so.54: undefined reference to `av_opt_get_int@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_timecode_make_mpeg_tc_string@LIBAVUTIL_51'
/usr/local/lib/libavformat.so.54: undefined reference to `av_rescale_q_rnd@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_bprintf@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_samples_copy@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_get_default_channel_layout@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_timecode_init_from_string@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_bprint_chars@LIBAVUTIL_51'
/usr/local/lib/libavformat.so.54: undefined reference to `av_des_mac@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_timecode_adjust_ntsc_framenum@LIBAVUTIL_51'
/usr/local/lib/libavformat.so.54: undefined reference to `av_timegm@LIBAVUTIL_51'
/usr/local/lib/libavcodec.so.54: undefined reference to `av_tempfile@LIBAVUTIL_51'
Meine CMakeLists.txt Datei ist die Standarddatei, außer dass ich sie geändert habe, um TBB zu verwenden, die Dokumentation deaktiviert und den Verbose-Modus eingeschaltet habe.
Wenn ich ldd /usr/local/lib/libavcodec.so.54 ausführe, erhalte ich:
root@omap4-multi:~/opencv/2.4.3/build# ldd /usr/local/lib/libavcodec.so.54
libavutil.so.51 => /usr/local/lib/libavutil.so.51 (0xb6132000)
libx264.so.123 => /usr/local/lib/libx264.so.123 (0xb5fc4000)
libvorbisenc.so.2 => /usr/local/lib/libvorbisenc.so.2 (0xb5e4a000)
libvorbis.so.0 => /usr/local/lib/libvorbis.so.0 (0xb5e14000)
libtheoraenc.so.1 => /usr/local/lib/libtheoraenc.so.1 (0xb5dcc000)
libtheoradec.so.1 => /usr/local/lib/libtheoradec.so.1 (0xb5dac000)
libopencore-amrwb.so.0 => /usr/local/lib/libopencore-amrwb.so.0 (0xb5d93000)
libopencore-amrnb.so.0 => /usr/local/lib/libopencore-amrnb.so.0 (0xb5d67000)
libmp3lame.so.0 => /usr/local/lib/libmp3lame.so.0 (0xb5cdd000)
libfaac.so.0 => /usr/local/lib/libfaac.so.0 (0xb5cc1000)
libm.so.6 => /lib/libm.so.6 (0xb5c44000)
libz.so.1 => /usr/lib/libz.so.1 (0xb5c29000)
libgcc_s.so.1 => /usr/local/lib/libgcc_s.so.1 (0xb5c02000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb5be3000)
libc.so.6 => /lib/libc.so.6 (0xb5ab8000)
libogg.so.0 => /usr/local/lib/libogg.so.0 (0xb5aac000)
/lib/ld-linux.so.3 (0x42228000)
Hat jemand eine Idee, was die Ursache sein könnte, oder was ich tun kann, um es zu beheben? Ich habe eine ganze Weile daran gearbeitet und bin ratlos. Jede Hilfe würde sehr geschätzt werden.