With defaults, stuff works.
Then, example #1:
Add noauto
to /usr/X11R6
in /etc/fstab
, reboot, mount /usr/X11R6
manually, launch xenodm
- fails - it can't find libXdmcp.so.11.0
.
Launch LD_LIBRARY_PATH=/usr/X11R6/lib xenodm
- xenodm
launches, but it looks like xenodm
goes into restart loop - the display flashes and I can't get to any tty for longer than a fraction of a second.
Example #2:
Add noauto
to /usr/local
in /etc/fstab
, reboot, mount /usr/local
manually, launch shellcheck
- fails - it can't find libffi.so.2.1
.
Launch LD_LIBRARY_PATH=/usr/local/lib shellcheck
- works.
Actually, I'm trying to make power losses more treatable - in /etc/fstab
add noauto
at column #4 and set 0
at columnt #6 for certain partitions so that base system can fsck
and boot ASAP. Obviously, big separate data partition is the 1st one to become noauto
and 0
, but /usr/X11R6
and /usr/local
seem eligible too.
- Why programs stop working depending on mount time?
LD_LIBRARY_PATH
seems unset by default, so programs know where to find libs without it. How do they know?
- If resorting to
LD_LIBRARY_PATH
, what is its correct full value? I believe there must be other way than { locate '*.so'; locate '*.so.*[0-9]' ;} | while read -r FILE; do dirname "${FILE}"; done | awk '!seen[$0]++' | tr '\n' ':'
- locate all .so
files and take their dirnames