Port-amd64 archive

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

Re: library versions in pkgsrc binaries



steve%prd.co.uk@localhost (Steve Blinkhorn) writes:

[see comment below about X11 sets!]

> I currently have two servers running in production mode at a remote
> data centre.  For reasons discussed in this list back in May/June,
> they are currently running 8.0_RC1.
>
> I need to get a browser running on one of them, so I tried to pkg_add - u -u
> firefox60 using as PKG_PATH ..../x86_64/8.0_2018Q1/All.  This version
> complained that libstdc++.so.8 was not found.   So I tried using
> ..../x86_64/7.0_2018Q1/All, and got the complaint that libfreetype.so.18
> was not found.
>
> Is there some trick I am missing getting packages to download and run
> in the simple way apparently envisaged, or is there something broken
> about the way dependencies are managed?   I would prefer to think the
> former...

pkgsrc manages dependencies on other packages itself, and that sounds
like it is not your problem.

pkgsrc expects base operating systems to have stable ABIs.   In the case
of NetBSD 7, there appears to have been an ABI break along the release
branch around May, for heimdal.

NetBSD does not really consider the ABI frozen until release.  So there
could be an ABI change between RC1 and 8.0 release.  But I have only
libfreetype.so.18 on an August build of netbsd-8 (post-release), that
has been running pre-release netbsd-8 versions since early 2018.

The fixes to the generic problem are:

  release branches need to avoid ABI changes.  (This is harder than it
  sounds, when upstream components fix serious bugs and change the so
  version number.)

  TNF could do bulk builds on a larger set of platforms.  There are more
  resources now, which let us start 8 before stopping 6.

  pkgsrc can be built on the system itself.  This is less crazy than it
  sounds; it's just some compute time and disk space.



But in your case, I wonder if you have the X11 sets installed.   What's
in /usr/X11R7/lib/libfreetype*?

A further workaround is to fetch the libraries with older sonames from a
previous release, and install just them.   Keep in mind that you really
need to use a consistent set of binary packges, in terms of being built
against the same base OS and from the same pkgsrc tree.


Home | Main Index | Thread Index | Old Index