Hi, Attached is a partial summery trying to debug the problems with fakeroot-hurd when building glibc.
Print statements to file are added to: trans/fakeroot.c libnetfs/file-set-translator.c libdiskfs/file-set-trans.c (and other files in libnetfs/, libdiskfs/, but no hits whatsoever for them). Some questions: Method 1: installing the built hurd and hurd-libs0.3, no reboot printouts to /tmp/trans_fakeroot.c.log /tmp/libnetfs_file-set-translator.c.log Which translators are restarted when installing, and which are when rebooting? Method 2: since fakeroot, settrans and fakeauth are dynamically linked the newly built libraries are copied to ./libs. since ext2 is also dynamically built, the remaining libraries are in stalled in ./libs too. Two tests: start test.fs with ext2fs.static: printouts to: /tmp/trans_fakeroot.c.log /tmp/libdiskfs_file-set-trans.c.log start test.fs with ext2fs: printouts to: /tmp/trans_fakeroot.c.log
Method 1: cd ~/.../test_fakeroot-hurd (not /my_chroot partition) Add print statements to trans/fakeroot.c libnetfs/file-set-translator.c libdiskfs/file-set-trans.c printing to files: /tmp/trans_fakeroot.c.log /tmp/libnetfs_file_set_translator.c.log /tmp/libdiskfs_file_set_trans.c.log Build and install hurd and hurd-libs0.3 (don't reboot) /usr/bin/fakeroot-hurd dh_install -plocales-all gives printouts to /tmp/trans_fakeroot.c.log /tmp/libnetfs_file_set_translator.c.log Method 2: cd /my_chroot/DEBs/test_fakeroot-hurd Create a test partition dd if=/dev/zero of=test.fs count=1000000 /* 512 MB */ echo y|mkfs.ext2 -o hurd test.fs copy from the build to .: ext2fs.static ext2fs fakeroot cp -p /usr/bin/fakeroot-hurd . edit paths: exec /my_chroot/DEBs/test_fakeroot-hurd/settrans --chroot \ /my_chroot/DEBs/test_fakeroot-hurd/fakeauth \ ... -- / /my_chroot/DEBs/test_fakeroot-hurd/fakeroot copy from the build to ./libs: libnetfs.so.0.3 libshouldbeinlibc.so.0.3 libfshelp.so.0.3 libports.so.0.3 libiohelp.so.0.3 libihash.so.0.3 libhurdbugaddr.so.0.3 libdiskfs.so.0.3 libpager.so.0.3 libstore.so.0.3 Check: LD_LIBRARY_PATH=./libs ldd ./fakeroot Fix paths in script fakeroot-hurd: cp -p /usr/bin/fakeroot-hurd . exec /my_chroot/DEBs/test_fakeroot-hurd/settrans --chroot \ /my_chroot/DEBs/test_fakeroot-hurd/fakeauth \ ... -- / /my_chroot/DEBs/test_fakeroot-hurd/fakeroot export LD_LIBRARY_PATH=/my_chroot/DEBs/test_fakeroot-hurd/libs Results: /my_chroot/DEBs/test_fakeroot-hurd/fakeroot-hurd dh_install -plocales-all cp: cannot create symbolic link âdebian/locales-all//usr/lib/locale/af_ZA.utf8/LC_PAPERâ: Device or resource busy dh_install: cp -a ./build-tree/locales-all/usr/lib/locale/af_ZA.utf8 debian/locales-all//usr/lib/locale/ returned exit code 1 /my_chroot/DEBs/test_fakeroot-hurd/fakeauth: Error 1 for child 3917 /my_chroot/DEBs/test_fakeroot-hurd/settrans: Error 1 for child 3916 ext2fs.static: /tmp/trans_fakeroot.c.log /tmp/libdiskfs_file-set-trans.c.log <no printout to /tmp/libnetfs_file_set_translator.c.log> <nothing interesting: /hurd/symlink??> ext2fs: /tmp/trans_fakeroot.c.log <no printout to /tmp/libdiskfs_file-set-trans.c.log> <no printout to /tmp/libnetfs_file_set_translator.c.log>