← Back to team overview

sikuli-driver team mailing list archive

[Question #399331]: ffmpeg libraries libavcodec.so.56, 'libavutil.so.55: cannot open shared object file'

 

New question #399331 on Sikuli:
https://answers.launchpad.net/sikuli/+question/399331

Installation has led me to backdate opencv, openexr, ilmbase, ffmpeg, libvpx, and x265 to versions containing a needed library. After introducing libavcodec.so.56 with ffmpeg-1_2.8.6-2, the Setup Log now claims to need libavutil.so.55. Unfortunately, I am unable to find an ffmpeg package containing both libraries although they do appear separately. Is there a way to rebuild ffmpeg with both of these libraries, or am I missing something else entirely?

---------------------------------------------------------------------------------------------------------------------------------------
sudo pacman -Qip ffmpeg-1_2.8.6-2-x86_64.pkg.tar.xz 
Name            : ffmpeg
Version         : 1:2.8.6-2
Description     : Complete solution to record, convert and stream audio and video
Architecture    : x86_64
URL             : http://ffmpeg.org/
Licenses        : GPL3
Groups          : None
Provides        : libavcodec.so=56-64  libavdevice.so=56-64  libavfilter.so=5-64  libavformat.so=56-64
                  libavresample.so=2-64  libavutil.so=54-64  libpostproc.so=53-64  libswresample.so=1-64
                  libswscale.so=3-64
Depends On      : alsa-lib  bzip2  fontconfig  fribidi  gnutls  gsm  lame  libass  libbluray  libmodplug
                  libpulse  libsoxr  libssh  libtheora  libva  libvdpau  libwebp  opencore-amr  openjpeg
                  opus  schroedinger  sdl  speex  v4l-utils  xvidcore  zlib  libdcadec.so=0-64
                  libvidstab.so=1.1-64  libvorbis.so=0-64  libvorbisenc.so=2-64  libvpx.so=3-64
                  libx264.so=148-64  libx265.so=79-64
Optional Deps   : ladspa: LADSPA filters
Conflicts With  : None
Replaces        : None
Compressed Size : 7.13 MiB
Installed Size  : 24.69 MiB
Packager        : Maxime Gauduin <alucryd@xxxxxxxxxxxxx>
Build Date      : Tue 02 Feb 2016 01:52:35 PM EST
Install Script  : No
Validated By    : None
Signatures      : None
---------------------------------------------------------------------------------------------------------------------------------------
[debug (9/19/16 12:30:22 AM)] Debug: setLogFile: /home/k9/Desktop/Sikulix/SikuliX-1.1.0-SetupLog.txt
[debug (9/19/16 12:30:22 AM)] RunSetup: ... starting with no args given
[debug (9/19/16 12:30:22 AM)] RunSetup: Setup: 1.1.0 2015-10-06_17:22 in folder:
/home/k9/Desktop/Sikulix
[debug (9/19/16 12:30:22 AM)] RunSetup: RunningSystem: Linux 4.7.4-1-ARCH (0 Arch rolling)
[debug (9/19/16 12:30:22 AM)] RunSetup: parent of jar/classes: /home/k9/Desktop/Sikulix
[debug (9/19/16 12:30:22 AM)] RunSetup: RunningJava: Java 8 (amd64) 1.8.0_102-b14
[debug (9/19/16 12:30:22 AM)] init user preferences
[debug (9/19/16 12:30:24 AM)] RunSetup: 
popAsk: --------------------
The following file(s) will be downloaded to
/home/k9/Desktop/Sikulix
--- Native support libraries for Linux (sikulixlibs...)
--- Package 1 ---
sikulixsetupIDE-1.1.0-forsetup.jar (IDE/Scripting)
sikulixsetupAPI-1.1.0-forsetup.jar (Java API)
 - with Jython
Only click NO, if you want to terminate setup now!
Click YES even if you want to use local copies in Downloads!
--------------------
[debug (9/19/16 12:30:25 AM)] RunSetup: 
popAsk: --------------------
You have for Linux native libs
/home/k9/.Sikulix/SikulixDownloads_201510061722/sikulixlibslux-1.1.0.jar
Click YES, if you want to use this for setup processing
... or click NO, to ignore it and download a fresh copy
--------------------
[debug (9/19/16 12:30:26 AM)] RunSetup: Copied from Downloads: sikulixlibslux
[debug (9/19/16 12:30:26 AM)] RunTimeSETUP: addToClasspath:
file:/home/k9/Desktop/Sikulix/sikulixlibslux.jar
*** classpath dump sikulix
  0: /home/k9/Desktop/Sikulix/sikulixsetup-1.1.0.jar
  1: /home/k9/Desktop/Sikulix/sikulixlibslux.jar
*** classpath dump end
[debug (9/19/16 12:30:26 AM)] RunSetup: checking usability of bundled/provided libs
[debug (9/19/16 12:30:26 AM)] RunTimeSETUP: exists libs folder at: /home/k9/.Sikulix/SikulixLibs_201510061722
[error (9/19/16 12:30:26 AM)] RunTimeSETUP: loadLib: libVisionProxy.so not usable: 
java.lang.UnsatisfiedLinkError: /home/k9/.Sikulix/SikulixLibs_201510061722/libVisionProxy.so: libavutil.so.55: cannot open shared object file: No such file or directory
[error (9/19/16 12:30:26 AM)] RunTimeSETUP: loadLib: libVisionProxy.so not usable: 
java.lang.UnsatisfiedLinkError: /home/k9/.Sikulix/SikulixLibs_201510061722/libVisionProxy.so: libavutil.so.55: cannot open shared object file: No such file or directory
[debug (9/19/16 12:30:26 AM)] LinuxSupport: we have to build libVisionProxy.so
[debug (9/19/16 12:30:26 AM)] LinuxSupport: checking: availability of OpenCV and Tesseract
[debug (9/19/16 12:30:26 AM)] LinuxSupport: checking: scanning loader cache (ldconfig -p)
[debug (9/19/16 12:30:26 AM)] RunTimeSETUP: ldconfig -p 
[debug (9/19/16 12:30:26 AM)] LinuxSupport: checking: found OpenCV libs:
/usr/lib/libopencv_core.so.2.4
/usr/lib/libopencv_highgui.so.2.4
/usr/lib/libopencv_imgproc.so.2.4
[debug (9/19/16 12:30:26 AM)] LinuxSupport: checking: found Tesseract lib:
/usr/lib/libtesseract.so.3
[debug (9/19/16 12:30:26 AM)] RunTimeSETUP: wmctrl -m 
[debug (9/19/16 12:30:26 AM)] LinuxSupport: checking: wmctrl seems to be available
[debug (9/19/16 12:30:26 AM)] RunTimeSETUP: xdotool version 
[debug (9/19/16 12:30:26 AM)] LinuxSupport: checking: xdotool seems to be available
[debug (9/19/16 12:30:26 AM)] LinuxSupport: buildVision: starting inline build: libVisionProxy.so
[debug (9/19/16 12:30:26 AM)] LinuxSupport: buildVision: java.home from java props: /usr/lib/jvm/java-8-openjdk/jre
[debug (9/19/16 12:30:26 AM)] LinuxSupport: buildVision: JAVA_HOME from environment: null
[debug (9/19/16 12:30:26 AM)] LinuxSupport: buildVision: JDK: found at: /usr/lib/jvm/java-8-openjdk
[debug (9/19/16 12:30:26 AM)] RunTimeSETUP: resourceList: enter
[debug (9/19/16 12:30:26 AM)] RunTimeSETUP: resourceLocation: (class org.sikuli.setup.RunSetup) /srcnativelibs/Vision
[debug (9/19/16 12:30:26 AM)] RunTimeSETUP: resourceList: having jar: jar:file:/home/k9/Desktop/Sikulix/sikulixlibslux.jar!/srcnativelibs/Vision
[debug (9/19/16 12:30:26 AM)] RunTimeSETUP: files exported: 16 from: /srcnativelibs/Vision to:
 /home/k9/.Sikulix/sikulixlibs/linux/Build/Source
[debug (9/19/16 12:30:26 AM)] LinuxSupport: **** content of build script:
#jdkdir=/usr/lib/jvm/java-7-openjdk-amd64
jdkdir=/usr/lib/jvm/java-8-openjdk

opencvinclude=
#opencvlib=/usr/lib/x86_64-linux-gnu
#opencvcore=$opencvlib/libopencv_core.so.2.4
opencvcore=/usr/lib/libopencv_core.so.2.4
#opencvimgproc=$opencvlib/libopencv_imgproc.so.2.4
opencvimgproc=/usr/lib/libopencv_imgproc.so.2.4
#opencvhighgui=$opencvlib/libopencv_highgui.so.2.4
opencvhighgui=/usr/lib/libopencv_highgui.so.2.4

tesseractinclude=
#tesseractlib=/usr/lib/libtesseract.so.3
tesseractlib=/usr/lib/libtesseract.so.3

#work=`pwd`
work=/home/k9/.Sikulix/sikulixlibs/linux/Build
source=$work/Source
buildinclude=$work/Include
build=$work/Target
stuff=$build/Stuff
rm -R -f $build
mkdir $build
mkdir $stuff

if [ "$opencvinclude" != "" ]; then
  includeplus="-I$opencvinclude "
fi
if [ "$tesseractinclude" != "" ]; then
  includeplus="$includeplus -I$tesseractinclude "
fi
includefinal="-I/usr/include -I/usr/local/include $includeplus -I$buildinclude"

echo ----------- COMPILING
for mod in cvgui.cpp finder.cpp pyramid-template-matcher.cpp sikuli-debug.cpp \
  tessocr.cpp vision.cpp visionJAVA_wrap.cxx
do
  echo ----- $mod
  g++ -c -O3 -fPIC -MMD -MP \
    -I$jdkdir/include \
    -I$jdkdir/include/linux  \
    $includefinal \
    -MF $stuff/$mod.o.d \
    -o $stuff/$mod.o \
    $source/$mod
  mods="$mods $stuff/$mod.o "
done

echo ----------- LINKING
g++ -shared -s -fPIC -dynamic $mods \
  $opencvcore \
  $opencvimgproc \
  $opencvhighgui \
  $tesseractlib \
  -o $build/libVisionProxy.so

**** content end
[debug (9/19/16 12:30:26 AM)] LinuxSupport: buildVision: running build script
[debug (9/19/16 12:30:26 AM)] RunTimeSETUP: /home/k9/.Sikulix/sikulixlibs/linux/runBuild 
[debug (9/19/16 12:30:36 AM)] LinuxSupport: buildVision: checking created libVisionProxy.so
[debug (9/19/16 12:30:36 AM)] RunTimeSETUP: ldd -r /home/k9/.Sikulix/sikulixlibs/linux/Build/Target/libVisionProxy.so 
[error (9/19/16 12:30:36 AM)] LinuxSupport: checking: might not work, has undefined symbols: libVisionProxy.so
[debug (9/19/16 12:30:36 AM)] LinuxSupport: av_free,:
[error (9/19/16 12:30:36 AM)] LinuxSupport: ------- output of the build run
0
----------- COMPILING
----- cvgui.cpp
----- finder.cpp
----- pyramid-template-matcher.cpp
----- sikuli-debug.cpp
----- tessocr.cpp
----- vision.cpp
----- visionJAVA_wrap.cxx
----------- LINKING

[error (9/19/16 12:30:36 AM)] RunTimeSETUP: Problematic lib: /home/k9/.Sikulix/SikulixLibs_201510061722/libVisionProxy.so (...TEMP...)
[error (9/19/16 12:30:36 AM)] RunTimeSETUP: libVisionProxy.so loaded, but it might be a problem with needed dependent libraries
ERROR: ...TEMP...: libavutil.so.55: cannot open shared object file: No such file or directory
[error (9/19/16 12:30:36 AM)] RunTimeSETUP:  *** terminating: problem with native library: libVisionProxy.so
[debug (9/19/16 12:30:36 AM)] RunTimeSETUP: final cleanup
[debug (9/19/16 12:30:36 AM)] FileManager: deleteFileOrFolder:
/tmp/Sikulix_2062351592
---------------------------------------------------------------------------------------------------------------------------------------

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.