You are not logged in.
Pages: 1
2 days ago Handbrake was working just fine, but now it won't start at all. When I run ghb in terminal, it reads it can't find a library called libvpx.so.6. Searching for libvpx says both 32-bit and 64-bit libvpx are installed. Any ideas what might be going on?
Last edited by Valso (2021-10-24 08:24:21)
Offline
pacman -Qi handbrake libvpx
Offline
Half of the output is in Bulgarian, so I put it through Google to translate it to English:
Name: handbrake
Version: 1.4.2-2
Description: Multithreaded video transcoder
Architecture: x86_64
URL: https://handbrake.fr/
Licenses: GPL
Groups: Nothing
Delivers: Nothing
Dependencies: desktop-file-utils hicolor-icon-theme libxml2 libass libvorbis opus speex libtheora lame x264
jansson libvpx libva numactl bzip2 gcc-libs zlib xz libjpeg-turbo gst-plugins-base gtk3
librsvg libgudev
Additional dependencies: gst-plugins-good: for video previews [installed]
gst-libav: for video previews [installed]
intel-media-sdk: Intel QuickSync support
libdvdcss: for decoding encrypted DVDs
Required by: Nothing
Addition for: Nothing
In conflict with: Nothing
Replaces: Nothing
Installed size: 54.35 MiB
Packer: Evangelos Foutras <foutrelis@archlinux.org>
Creation date: 12.10.2021 (Tue) 13:31:19
Date of installation: 22.10.2021 (Fri) 8:57:34
Reason for installation: Explicitly installed
Installation script: No.
Validated by: Signature
Name: libvpx
Version: 1.11.0-1
Description: VP8 and VP9 codec
Architecture: x86_64
URL: https://www.webmproject.org/
Licenses: BSD
Groups: Nothing
Delivers: libvpx.so = 7-64
Dependencies: gcc-libs
Additional dependencies: Nothing
Required by: avidemux-cli ffmpeg gst-plugins-good handbrake qt5-webengine thunderbird
Addition for: vlc
In conflict with: Nothing
Replaces: Nothing
Installed size: 4.46 MiB
Packer: Maxime Gauduin <alucryd@archlinux.org>
Date of creation: 12.10.2021 (Tue) 12:04:26
Date of installation: 22.10.2021 (Fri) 8:57:34
Reason for installation: Installed as dependent on another package
Installation script: No.
Validated by: Signature
Offline
Fyi
LC_ALL=C pacman -Qi handbrake libvpx
The installed version package contains a ghb binary that links libvpx.so.7
type ghb
ldd /usr/bin/ghb | grep vpx
Offline
Fyi
LC_ALL=C pacman -Qi handbrake libvpx
The installed version package contains a ghb binary that links libvpx.so.7
type ghb ldd /usr/bin/ghb | grep vpx
I understand (sort of). Downgrading handbrake doesn't fix the problem and neither does (work) downgrading libvpx. I also tried downgrading ffmpeg but that breaks other dependencies, so that's a no go. Other than completely uninstalling and forgetting about handbrake, I don't see a way to fix this.
Offline
You're not supposed to downgrade anything.
Please post the output of the last to commands I asked for (well, kinda ;-) in #4.
Offline
Name : handbrake
Version : 1.4.2-2
Description : Multithreaded video transcoder
Architecture : x86_64
URL : https://handbrake.fr/
Licenses : GPL
Groups : None
Provides : None
Depends On : desktop-file-utils hicolor-icon-theme libxml2 libass libvorbis opus speex libtheora lame x264 jansson
libvpx libva numactl bzip2 gcc-libs zlib xz libjpeg-turbo gst-plugins-base gtk3 librsvg libgudev
Optional Deps : gst-plugins-good: for video previews [installed]
gst-libav: for video previews [installed]
intel-media-sdk: Intel QuickSync support
libdvdcss: for decoding encrypted DVDs
Required By : None
Optional For : None
Conflicts With : None
Replaces : None
Installed Size : 54.35 MiB
Packager : Evangelos Foutras <foutrelis@archlinux.org>
Build Date : Tue Oct 12 13:31:19 2021
Install Date : Sat Oct 23 13:07:48 2021
Install Reason : Explicitly installed
Install Script : No
Validated By : Signature
Name : libvpx
Version : 1.11.0-1
Description : VP8 and VP9 codec
Architecture : x86_64
URL : https://www.webmproject.org/
Licenses : BSD
Groups : None
Provides : libvpx.so=7-64
Depends On : gcc-libs
Optional Deps : None
Required By : avidemux-cli ffmpeg gst-plugins-good handbrake qt5-webengine thunderbird
Optional For : vlc
Conflicts With : None
Replaces : None
Installed Size : 4.46 MiB
Packager : Maxime Gauduin <alucryd@archlinux.org>
Build Date : Tue Oct 12 12:04:26 2021
Install Date : Fri Oct 22 08:57:34 2021
Install Reason : Installed as a dependency for another package
Install Script : No
Validated By : Signature
[rado@arch]: ~>$ type ghb
ghb is /usr/local/bin/ghb
[rado@arch]: ~>$ ldd /usr/bin/ghb | grep vpx
libvpx.so.7 => /usr/lib/libvpx.so.7 (0x00007fe7bcaaa000)
Offline
Take a close look at the second box you posted.
Think about it.
Can you see what's going on and what your problem is?
Offline
The problem is that the installed libvpx is version/number 7 but the program is looking for version/number 6 and IDK how to fix that. The only thing I haven't tried yet is to try and compile handbrake from source.
Offline
No, it's not.
Look closer.
Offline
You mean other than the 3 different locations?
Offline
pacman -Qo /usr/local/bin/ghb
pacman -Qo /usr/bin/ghb
ldd /usr/local/bin/ghb | grep vpx
ldd /usr/bin/ghb | grep vpx
type ghb
ghb
/usr/local/bin/ghb
/usr/bin/ghb
Offline
I'm not a linux guru, so I don't understand where you're getting at with this. Care to throw a hint?
Offline
Did you run those commands and look at the output?
You don't have to be a linux guru - you need to understand why you won't get a tan, despite the sun shining, while standing behind a wall.
Offline
I did run them. Either they have changed the default location of the executable file and that's why it returns errors or there's something else going on that I'm not getting. If it's the former, I'll simply edit the desktop file.
Offline
What package owns /usr/local/bin/ghb ?
Why are there /usr/local/bin/ghb and /usr/bin/ghb ?
Which one is executed when you run "ghb" ?
(I know the answer to all of them, but I want you to figure)
Offline
What package owns /usr/local/bin/ghb ?
Why are there /usr/local/bin/ghb and /usr/bin/ghb ?
Which one is executed when you run "ghb" ?(I know the answer to all of them, but I want you to figure)
handbrake 1.4.2-2 owns /usr/bin/ghb, the first command says there's no package owning /local/bin/ghb. If I run just "ghb", for some reason it's looking for it in /usr/local/bin and since it can't be started, that brings up the error about libvpx.so.6. But if I run /usr/bin/ghb, then handbrake starts ok, that's why I figured that if I edit the desktop file to point to the new location, it should fix the problem. Which I did a moment ago. IDK if that's the right way to do it, but at least it works.
Offline
You have an unmanaged installation of handbrake in the /usr/local prefix (there're probably more related file, "pacman -Ql handbrake" will list the files in /usr/* and you can look that up for the bogus copies in /usr/local)
The reason why /usr/local/bin/ghb takes precedence is
echo $PATH
and that's ok and by design - you simply don't want to have the wrong and likely very dated version of handbrake around that you've so far been using unknowingly.
Editing the desktop file is not a sustainable approach as the next handbrake update will revert that.
=> So rid your system of the hadbrake installation in /usr/local/bin - likely from when you at some point compiled it yourself. If you have those sources still around, "sudo make uninstall" will likely remove it (but might also hit files of the pacman version, so in doubt re-install handbrake w/ pacman afterwards)
Offline
Hmm, I don't remember ever trying to compile handbrake myself, that was just an idea that I haven't even tried yet. But it is possible an older version to have been installed there. Anyway, I'll remove the fake ghb from the local prefix.
The next update won't revert the edited desktop file because I've placed it in ~/.local/share/applications and that location takes priority over /usr/share/applications. Besides, in the unlikely case that this still happens, I'll simply reedit the desktop file in /usr/share/applications and then run "sudo chattr +i" on it, so that it won't be changed at the next handbrake update.
Thanks for your help and patience, man. I'm with Covid and my brain isn't 100% lately.
P.S. The command you wrote above listed nothing with /usr/local prefix. Only with /usr/bin and /usr/share.
Offline
P.S. The command you wrote above listed nothing with /usr/local prefix. Only with /usr/bin and /usr/share.
Yes, because the package doesn't install into /usr/local - the idea is to look at that ouput and then check for eg. "/usr/local/share/locale/af/LC_MESSAGES/ghb.mo" because of the listed "/usr/share/locale/af/LC_MESSAGES/ghb.mo"
Offline
Ah, I understand now. Well, there was only /usr/local/bin/ghb which I removed a few minutes ago.
Offline
Pages: 1