Re: Missing Shared Object File for ffmpeg
On Tue 20 Mar 2018 at 21:29:49 (-0400), Dan Norton wrote:
> On Tue, 20 Mar 2018 18:35:48 -0500
> David Wright <deblis@lionunicorn.co.uk> wrote:
>
> > On Tue 20 Mar 2018 at 18:41:55 (-0400), Dan Norton wrote:
> > > On Tue, 20 Mar 2018 13:42:24 -0500
> > > David Wright <deblis@lionunicorn.co.uk> wrote:
> > >
> > > > On Tue 20 Mar 2018 at 13:47:42 (-0400), Dan Norton wrote:
> > > > > On Tue, 20 Mar 2018 12:59:21 -0400
> > > > > Greg Wooledge <wooledg@eeg.ccf.org> wrote:
> > > > >
> > > > > > On Tue, Mar 20, 2018 at 12:18:05PM -0400, Dan Norton
> > > > > > wrote:
> > > > > > > > * The output of "apt policy ffmpeg".
> > > > > > >
> > > > > > > ffmpeg:
> > > > > > > Installed: 7:3.2.10-1~deb9u1
> > > > > > > Candidate: 7:3.2.10-1~deb9u1
> > > > > > > Version table:
> > > > > > > *** 7:3.2.10-1~deb9u1 500
> > > > > > > 500 http://debian.gtisc.gatech.edu/debian
> > > > > > > stretch/main amd64 Packages
> > > > > > > 500 http://security.debian.org/debian-security
> > > > > > > stretch/updates/main amd64 Packages
> > > > > > > 100 /var/lib/dpkg/status
> > > > > > >
> > > > > > > > * The output of "aptitude why libopenal1".
> > > > > > >
> > > > > > > i ffmpeg Depends libavdevice57 (>= 7:3.2.10)
> > > > > > > i A libavdevice57 Depends libopenal1 (>= 1.14)
> > > > > >
> > > > > > >From these, it looks like you have the stretch version of
> > > > > > >ffmpeg, and
> > > > > > a libopenal1 dependency that can be satisfied by the stretch
> > > > > > version of libopenal1.
> > > > > >
> > > > > > If libopenal1 is not actually installed, then something is
> > > > > > very wrong. Is it possible that you have the package
> > > > > > "installed", but something else removed the library file? In
> > > > > > that case, just reinstall the package:
> > > > > >
> > > > > > apt-get --reinstall install libopenal1
> > > > > >
> > > > >
> > > > > That did it - thanks, Greg!
> > > > >
> > > > > But what does this do that apt purge/install of ffmpeg does
> > > > > not?
> > > >
> > > > You posted:
> > > >
> > > > # apt purge ffmpeg
> > > > # apt autoremove
> > > > # apt install ffmpeg
> > > >
> > > > but you didn't show your working. You should check out what
> > > > happened by looking at /var/log/apt/history.log to see if
> > > > libopenal1 was affected by this command sequence. For a start,
> > > > other packages might depend on libopenal1, preventing its
> > > > auto-removal.
> > >
> > > The broken system was installed in December 2017. Looking at all the
> > > logs in /var/log/apt/history* (extracting the ones that were
> > > archived) and running:
> > > dan@deb9:~/apt.logs$ grep -rnw '.' -e 'libopenal1' | less
> > > ...there is one hit, other than today's --reinstall and that is an
> > > install:
> > >
> > > Start-Date: 2017-12-17 21:29:03
> > > Commandline: /usr/sbin/synaptic
> > > Requested-By: dan (1200)
> > > Install: [...]
> > > libopenal1:amd64 (1:1.17.2-4+b2, automatic), # e pluribus unum
> > > [...]
> > >
> > > > Then of course there's the investigation of why it wasn't
> > > > installed correctly in the first place, and what was happening
> > > > during the "several attempts" at installing ffmpeg.
> > > >
> > >
> > > Apparently nothing during these attempts involved libopenal1,
> > > according to the logs in /var/log/apt/ - is there anywhere else
> > > that could shed light on this?
> >
> > Is it still marked as Automatic? Particularly if you try to install
> > it, it will lose that flag (all this is IIRC). Further use of that
> > command sequence would have no effect in that case.
> >
>
> root@deb9:~# apt search libopenal1
> Sorting... Done
> Full Text Search... Done
> libopenal1/stable,now 1:1.17.2-4+b2 amd64 [installed,automatic]
> [...]
>
> > The dependency is via another package. I've found that removing a
> > package doesn't always reach down to all the Automatic packages
> > beneath it. This is easily demonstrated by installing a package
> > with multiple dependencies (in depth) and then immediately purging
> > it.
> >
> > But none of this gets down to the root of the problem (why the
> > installed package didn't provide the library). Perhaps it might
> > be worth occasionally running
> > # debsums -l
> > # debsums -ca
> > to check things over. There's also dpkg -V.
> >
>
> root@deb9:~# debsums -l
> root@deb9:~#
>
> root@deb9:~# debsums -ca 2>/home/dan/debsums.out
> /etc/lvm/lvm.conf
> ...producing 958.9 kB of missing file messages in debsums.out, none
> mention libopenal1.
Interesting difference between your systems and mine:
wheezy:
# debsums -l
# debsums -ca
/etc/apt-cacher-ng/security.conf (.deb cache)
/etc/console-setup/remap.inc (VC key definitions)
/etc/exim4/passwd.client (email submission at home)
/etc/kbd/config (key repeat rate and blanking)
/etc/timidity/timidity.cfg (waveforms)
# # dpkg too old for -V
jessie:
# debsums -l
# debsums -ca
/etc/issue (prompt contains time)
/etc/console-setup/remap.inc
/etc/exim4/passwd.client (email submission away)
/etc/kbd/config
/etc/systemd/system.conf (shorten annoying timeouts at closedown)
/etc/timidity/timidity.cfg
# dpkg -V
??5?????? c /etc/exim4/passwd.client
??5?????? c /etc/issue
??5?????? c /etc/kbd/config
??5?????? c /etc/systemd/system.conf
??5?????? c /etc/console-setup/remap.inc
??5?????? c /etc/timidity/timidity.cfg
#
stretch:
# debsums -l
# debsums -ca
/etc/issue
/etc/console-setup/remap.inc
/etc/initramfs-tools/update-initramfs.conf
# dpkg -V
??5?????? c /etc/initramfs-tools/update-initramfs.conf
??5?????? c /etc/issue
??5?????? c /etc/console-setup/remap.inc
#
> root@deb9:~# dpkg -V >/home/dan/dpkg.out
> ...producing 590.2 kB of text lines, none mention libopenal1.
Looks like it's more or less the same list of files.
> Now that libopenal1 has been reinstalled and ffmpeg runs this is
> probably to be expected, right? It would have been more interesting if
> done when deb9 was broken WRT ffmpeg.
Yes, but you get so much more output, you'd need to go looking.
One glance at those lines in my output and I recognise all
the changes I expect to see on those hosts.
Cheers,
David.
Reply to: