FS#72069 - [glibc] libnsl.so.2 symlink is missing

Attached to Project: Arch Linux
Opened by Dr. Robert Marmorstein (atomopawn) - Wednesday, 08 September 2021, 05:18 GMT
Last edited by Antonio Rojas (arojas) - Wednesday, 08 September 2021, 07:09 GMT
Task Type Bug Report
Category Packages: Core
Status Closed
Assigned To No-one
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No


The glibc 2.33-5 package installs libnsl-2.33.so to /usr/lib while the libnsl 2.0.0-1 package in testing
instead installs libnsl.so.3.0.0 and links libnsl.so.3 to it. It is a bit strange that different versions of this library
are installed by different packages, but even more confusing is the fact that glibc doesn't create a symlink from libnsl.so.2 to
the old nsl library.

This broke dynamic loading of PassengerAgent in my (somewhat dated) ruby on rails installation in a non-obvious way. Manually creating the symlink
worked around the problem.

Not sure what a good solution is, but figured I should post an issue report in case anyone else runs into linking errors like this:

App 183006 output: /usr/lib/ruby/gems/2.6.0/gems/passenger-6.0.2/buildout/support-binaries/PassengerAgent: error while loading shared libraries: libnsl.so.2: cannot open shared object file: No such file or directory

This task depends upon

Closed by  Antonio Rojas (arojas)
Wednesday, 08 September 2021, 07:09 GMT
Reason for closing:  Not a bug
Comment by Antonio Rojas (arojas) - Wednesday, 08 September 2021, 07:09 GMT
The soversion of the glibc libnsl is 1, not 2. Creating a libnsl.so.2 symlink doesn't make any sense. You just need to rebuild your stuff against libnsl 2.x