Re: pacman's "Depends On"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



On Fri, Apr 24, 2015 at 8:06 AM, Ralf Mardorf
<ralf.mardorf@xxxxxxxxxxxxxx> wrote:
> On Fri, 24 Apr 2015 06:41:27 +0200, Ralf Mardorf wrote:
>>On Thu, 23 Apr 2015 22:56:56 +0300, Jesse Jaara wrote:
>>>What you need to do is to create a custom package for the specific
>>>version of libvpx that doesn't conflict with the one from repo, so you
>>>can have both the new version for repo packages and the old version
>>>for whatever reason
>>
>>Yes, I was thinking of simply installing the new package and copying
>>/usr/lib/libvpx.so.1.3.0
>>from a backup and add the links
>>/usr/lib/libvpx.so.1
>>/usr/lib/libvpx.so.1.3
>>manually, instead of building a package for the old version.
>>
>>However, I can't do this for
>>/usr/lib/libvpx.so
>>and the bins, that perhaps aren't needed from the old package.
>
> It works :).

This is because of the so called SONAME. That is the name in a shared
library that will be to look for it when it is used in a program.
Usually, in standard linux packages the SONAME of a shared library
includes only the major version number.

For example, with the latest version:

$ objdump -p /usr/lib/libvpx.so | grep SONAME
  SONAME               libvpx.so.2

And with an old one, I assume:

$ objdump -p /usr/lib/libvpx.so.1.3.0 | grep SONAME
  SONAME               libvpx.so.1

You can check the SONAME used by VirtualBox with this command:

$ objdump -p /usr/lib/virtualbox/components/VBoxC.so | grep vpx
  NEEDED               libvpx.so.2

And check whether the file is found with:

$ ldd /usr/lib/virtualbox/components/VBoxC.so | grep libvpx
        libvpx.so.2 => /usr/lib/libvpx.so.2 (0x00007f095d9e8000)


The bottom line is that if the conflict is between different major
version of the library, no problem: just copy "libvpx.so.1" to
/usr/lib/ or /usr/local/lib/.

The "libvpx.so" symbolic link exists because it will be the library
name used to build new programs, but it is not needed in runtime.

HTH
--
Rodrigo


[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux