It seems that the run-time dynamic loader gets confused by relative paths in LD_LIBRARY_PATHS.
Nested chroot with a directory change may result in inexistent directory paths in LD_LIBRARY_PATH as well (see example1 attached) The following patch makes all paths in LD_LIBRARY_PATH absolute. (The same example gives the results in example2 attached) Regards, JH Chatenet
Example 1 : without patch me@here:~$ fakechroot fakeroot chroot my_first_wheezy_chroot # cd /home # chroot not_me/my_second_wheezy_chroot # echo $LD_LIBRARY_PATH /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/my_first_wheezy_chroot/usr/lib/i386-linux-gnu/libfakeroot: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/my_first_wheezy_chroot/usr/lib64/libfakeroot: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/my_first_wheezy_chroot/usr/lib32/libfakeroot: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/my_first_wheezy_chroot/lib/i386-linux-gnu: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/my_first_wheezy_chroot/usr/lib/i386-linux-gnu: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/my_first_wheezy_chroot/lib/i486-linux-gnu: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/my_first_wheezy_chroot/usr/lib/i486-linux-gnu: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/my_first_wheezy_chroot/usr/local/lib: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/usr/lib/i386-linux-gnu/libfakeroot: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/usr/lib64/libfakeroot: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/usr/lib32/libfakeroot: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/home/me/my_first_wheezy_chroot/usr/lib: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/home/me/my_first_wheezy_chroot/lib: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/lib/i386-linux-gnu: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/usr/lib/i386-linux-gnu: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/lib/i486-linux-gnu: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/usr/lib/i486-linux-gnu: /home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/usr/local/lib: my_first_wheezy_chroot/usr/lib/i386-linux-gnu/libfakeroot:my_first_wheezy_chroot/usr/lib64/libfakeroot: my_first_wheezy_chroot/usr/lib32/libfakeroot:my_first_wheezy_chroot/lib/i386-linux-gnu: my_first_wheezy_chroot/usr/lib/i386-linux-gnu:my_first_wheezy_chroot/lib/i486-linux-gnu: my_first_wheezy_chroot/usr/lib/i486-linux-gnu:my_first_wheezy_chroot/usr/local/lib: /usr/lib/i386-linux-gnu/libfakeroot:/usr/lib64/libfakeroot:/usr/lib32/libfakeroot: /home/me/my_first_wheezy_chroot/usr/lib:/home/me/my_first_wheezy_chroot/lib: /home/me/my_first_wheezy_chroot/home/not_me/my_second_wheezy_chroot/usr/lib: /home/me/my_first_wheezy_chroot/home/not_me/my_second_wheezy_chroot/lib (just breaking a long line at ':') There appear in LD_LIBRARY_PATH paths "/home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/my_first_wheezy_chroot/*" "/home/me/my_first_wheezy_chrootnot_me/my_second_wheezy_chroot/*" which don't exist in the filesystem.
Example 2 : with the patch applied me@here:~$ fakechroot fakeroot chroot my_first_wheezy_chroot # echo $LD_LIBRARY_PATH /home/me/my_first_wheezy_chroot/usr/lib/i386-linux-gnu/libfakeroot: /home/me/my_first_wheezy_chroot/usr/lib64/libfakeroot: /home/me/my_first_wheezy_chroot/usr/lib32/libfakeroot: /home/me/my_first_wheezy_chroot/lib/i386-linux-gnu: /home/me/my_first_wheezy_chroot/usr/lib/i386-linux-gnu: /home/me/my_first_wheezy_chroot/lib/i486-linux-gnu: /home/me/my_first_wheezy_chroot/usr/lib/i486-linux-gnu: /home/me/my_first_wheezy_chroot/usr/local/lib: /usr/lib/i386-linux-gnu/libfakeroot: /usr/lib64/libfakeroot: /usr/lib32/libfakeroot: /home/me/my_first_wheezy_chroot/usr/lib: /home/me/my_first_wheezy_chroot/lib # cd /home # chroot not_me/my_second_wheezy_chroot # echo $LD_LIBRARY_PATH /home/me/my_first_wheezy_chroot/home/not_me/my_second_wheezy_chroot/usr/lib/i386-linux-gnu/libfakeroot: /home/me/my_first_wheezy_chroot/home/not_me/my_second_wheezy_chroot/usr/lib64/libfakeroot: /home/me/my_first_wheezy_chroot/home/not_me/my_second_wheezy_chroot/usr/lib32/libfakeroot: /home/me/my_first_wheezy_chroot/home/not_me/my_second_wheezy_chroot/lib/i386-linux-gnu: /home/me/my_first_wheezy_chroot/home/not_me/my_second_wheezy_chroot/usr/lib/i386-linux-gnu: /home/me/my_first_wheezy_chroot/home/not_me/my_second_wheezy_chroot/lib/i486-linux-gnu: /home/me/my_first_wheezy_chroot/home/not_me/my_second_wheezy_chroot/usr/lib/i486-linux-gnu: /home/me/my_first_wheezy_chroot/home/not_me/my_second_wheezy_chroot/usr/local/lib: /home/me/my_first_wheezy_chroot/home/not_me/my_second_wheezy_chroot/usr/lib: /home/me/my_first_wheezy_chroot/home/not_me/my_second_wheezy_chroot/lib: /home/me/my_first_wheezy_chroot/usr/lib/i386-linux-gnu/libfakeroot: /home/me/my_first_wheezy_chroot/usr/lib64/libfakeroot: /home/me/my_first_wheezy_chroot/usr/lib32/libfakeroot: /home/me/my_first_wheezy_chroot/lib/i386-linux-gnu: /home/me/my_first_wheezy_chroot/usr/lib/i386-linux-gnu: /home/me/my_first_wheezy_chroot/lib/i486-linux-gnu: /home/me/my_first_wheezy_chroot/usr/lib/i486-linux-gnu: /home/me/my_first_wheezy_chroot/usr/local/lib: /usr/lib/i386-linux-gnu/libfakeroot: /usr/lib64/libfakeroot: /usr/lib32/libfakeroot: /home/me/my_first_wheezy_chroot/usr/lib: /home/me/my_first_wheezy_chroot/lib:
absolute_path.patch.gz
Description: Binary data