Bug#685706: libc-bin: order of /etc/ld.so.conf.d/*.conf
Package: libc-bin
Version: 2.13-35
Severity: normal
Dear Maintainer,
i'm using debian as my primary development platform.
this means that i often build custom libraries, that are installed into
/usr/local/lib/
traditionally, /usr/local/lib/ will be searched before /usr/lib/, which is great
as it allows to override system (distro) defaults.
unfortunately this is no longer the case, since the advent of multiarch support
in debian:
most lib<package>s will no longer install into /usr/lib/ but instead into
/usr/lib/<triplet>/ (which is good).
this however means, that the standard installation of libraries will override
the installation in /usr/local, since the default ld.so.config is:
$ cat /etc/ld.so.conf.d/*.conf
# Multiarch support
/lib/i386-linux-gnu
/usr/lib/i386-linux-gnu
/lib/i486-linux-gnu
/usr/lib/i486-linux-gnu
# libc default configuration
/usr/local/lib
# Legacy biarch compatibility support
/lib64
/usr/lib64
the files installed in /etc/ld.so.conf.d/ are:
$ ls /etc/ld.so.conf.d/
i486-linux-gnu.conf libc.conf zz_amd64-biarch-compat.conf
these files are included in alphabetical order, and most files here are named in
some meaningful way (without ordering in mind), with the noteable exception of
the biarch-compat file.
this basically makes the order of search-paths *arbitrary*!
however, since order _does_ of search-paths does matter, i would suggest to
adapat a scheme similar to all the other configuration where a bunch of files
are included and order matters: prefix the filename with a numeric ID, that
makes sorting obvious and explicit.
something like:
20_libc.conf
50_i486-linux-gnu.conf
99_amd-biarch-compat.conf
-- System Information:
Debian Release: wheezy/sid
APT prefers testing
APT policy: (990, 'testing')
Architecture: i386 (i686)
Kernel: Linux 3.2.0-3-686-pae (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
-- no debconf information
Reply to: