3

I've compiled FFmpeg and installed it with checkinstall. Now, I'm trying to install OpenCV development files, but it wants to install libavcodec-dev libavcodec54 libavformat54 libavutil-dev libavutil52 from Ubuntu's repositories, which breaks FFmpeg. I tried using these checkinstall flags

--provides='libavcodec54, libavdevice53, libavfilter3, libavformat54, libavresample1, libavutil52, libswscale2, libpostproc52, libavcodec-dev, libavdevice-dev, libavfilter-dev, libavformat-dev, libavresample-dev, libavutil-dev, libswscale-dev, libpostproc-dev' --replaces='libavcodec54, libavdevice53, libavfilter3, libavformat54, libavresample1, libavutil52, libswscale2, libpostproc52, libavcodec-dev, libavdevice-dev, libavfilter-dev, libavformat-dev, libavresample-dev, libavutil-dev, libswscale-dev, libpostproc-dev'

but it doesn't help. How can I install applications using apt-get that depend on libav/FFmpeg libraries? Is it possible without recompiling FFmpeg as static binary?

m132
  • 819
  • 1
  • 6
  • 11

2 Answers2

2

I'm not familiar with checkinstall, not sure why --provides didn't work.

Here another option using equivs to create dummy packages for those packages:

  1. Install equivs:

    sudo apt-get install equivs
    
  2. Generate control file from template:

    equivs-control libavcodec54
    
  3. Open libavcodec54 file for edit. Change name and version if needed:

    ...
    Package: libavcodec54
    Version: 6:9.18-1dummy0
    ...
    
  4. Build then install it:

    equivs-build libavcodec54
    sudo dpkg -i libavcodec54*.deb
    

Much work to do same for all required packages, but it can solve it.

user.dz
  • 47,137
  • 13
  • 140
  • 258
1

It may be easier to recompile FFmpeg and use the local installation shown in this wiki:

Compile FFmpeg on Ubuntu, Debian, or Mint

https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu

This will mean no more entanglements with the Ubuntu package management system...

andrew.46
  • 37,085
  • 25
  • 149
  • 228
  • 2
    Thanks for answer, but this is just not what I want. Self-compiled libraries are faster and support more formats, such as experimental HEVC or these with licensing issues. – m132 May 18 '14 at 12:52