Шукати в цьому блозі

пʼятницю, 1 жовтня 2010 р.

Ошибка: ffmpeg: relocation error: /usr/local/lib/libavfilter.so.1: symbol sws_isSupportedInput, version LIBSWSCALE_0 not defined in file libswscale.so

На некоторых компьютерах с Ubuntu 10.04.1, после сборке ffmpeg из git наблюдалась ошибка вида:

ffmpeg: relocation error: /usr/local/lib/libavfilter.so.1: symbol sws_isSupportedInput, version LIBSWSCALE_0 not defined in file libswscale.so.0 with link time reference

При инсталяции ffmpeg бросал библиотеки /usr/local/lib/

но ldd `which ffmpeg` выдал:



linux-gate.so.1 => (0x004f8000)
libavdevice.so.52 => /usr/lib/i686/cmov/libavdevice.so.52 (0x00336000)
libavfilter.so.1 => /usr/local/lib/libavfilter.so.1 (0x006ed000)
libavformat.so.52 => /usr/lib/i686/cmov/libavformat.so.52 (0x001fd000)
libavcodec.so.52 => /usr/lib/i686/cmov/libavcodec.so.52 (0x006ff000)
libswscale.so.0 => /usr/lib/i686/cmov/libswscale.so.0 (0x00110000)

libavcore.so.0 => /usr/local/lib/libavcore.so.0 (0x0014b000)
libavutil.so.50 => /usr/local/lib/libavutil.so.50 (0x005a2000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00150000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00176000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00340000)
librtmp.so.0 => /usr/lib/i686/cmov/librtmp.so.0 (0x0018f000)
libz.so.1 => /lib/libz.so.1 (0x001a7000)
libxvidcore.so.4 => /usr/lib/libxvidcore.so.4 (0x005b9000)
libx264.so.98 => /usr/lib/libx264.so.98 (0x004f9000)
libopencore-amrwb.so.0 => /usr/lib/libopencore-amrwb.so.0 (0x001bc000)
libopencore-amrnb.so.0 => /usr/lib/libopencore-amrnb.so.0 (0x002d9000)
libmp3lame.so.0 => /usr/lib/libmp3lame.so.0 (0x13fca000)
libgsm.so.1 => /usr/lib/libgsm.so.1 (0x0030c000)
libfaac.so.0 => /usr/lib/libfaac.so.0 (0x0031a000)
/lib/ld-linux.so.2 (0x001e0000)
libssl.so.0.9.8 => /lib/i686/cmov/libssl.so.0.9.8 (0x0049a000)
libcrypto.so.0.9.8 => /lib/i686/cmov/libcrypto.so.0.9.8 (0x0219d000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x1422e000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00571000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x001d6000)


Ссылки на некоторые библиотеки вели /usr/lib/i686/cmov/, где были старые версии библиотек, которые не удовлетворяли последнюю сборку ffmpeg, поскольку я не сильно продвинут в знаниях Linux, решил проблему в лоб, скопировав(переписав) новые необходимые библиотеки поверх старых из каталога /usr/local/lib/.

Или же сменить симлинки библиотек на библиотеки в /usr/local/lib/.

В результате, по крайней мере ffmpeg стал запускаться:

ffmpeg
FFmpeg version git-120610e, Copyright (c) 2000-2010 the FFmpeg developers
built on Oct 1 2010 11:23:47 with gcc 4.4.3
configuration: --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-shared --enable-libmp3lame --enable-gpl --enable-nonfree --enable-version3 --enable-yasm --enable-libgsm --enable-libfaac --enable-libx264 --enable-libxvid --enable-librtmp
libavutil 50.27. 0 / 50.27. 0
libavcore 0. 9. 0 / 0. 9. 0
libavcodec 52.89. 0 / 52.89. 0
libavformat 52.78. 5 / 52.78. 5
libavdevice 52. 2. 2 / 52. 2. 2
libavfilter 1.39. 0 / 1.39. 0
libswscale 0.11. 0 / 0.11. 0
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

Use -h to get full help or, even better, run 'man ffmpeg'

Немає коментарів: