[Bug 221032] Absolute pathnames not working with libmap.conf
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Wed Jul 26 18:28:51 UTC 2017
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=221032
Bug ID: 221032
Summary: Absolute pathnames not working with libmap.conf
Product: Base System
Version: 11.0-RELEASE
Hardware: Any
OS: Any
Status: New
Keywords: feature, patch
Severity: Affects Some People
Priority: ---
Component: kern
Assignee: freebsd-bugs at FreeBSD.org
Reporter: tatu.kilappa at iki.fi
Created attachment 184747
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=184747&action=edit
Patch to enable absolute pathname as target in libmap.conf
It seems it's not possible to replace entries in libmap configuration with
absolute pathnames and have them work.
For example, consider installing Nvidia driver from package or ports, it will
create the following libmap directive:
libGL.so libGL-NVIDIA.so
libGL.so.1 libGL-NVIDIA.so.1
While investigating other things, I found out that replacing the target shared
object with the following:
libGL.so /usr/local/lib/libGL-NVIDIA.so.1
Creates an error:
Shared object "/usr/local/lib/libGL-NVIDIA.so.1" not found, required by
"<binary>"
The problem lies in rtld.c line 1519 and onward, that checks for absolute path
before going to lm_find. This means, that if libmap.conf contains a mapping
with an absolute pathname, it will try to search that name from the library
search paths, which will obviously not work.
I've attached a patch that fixes the issue at least for me.
If current behavior is intended, or if this should be handled elsewhere, please
disregard this bug report.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list