On Mon, 18 Nov 2024 at 22:30, Richard Lewis <richard.lewis.deb...@googlemail.com> wrote: > On Mon, 18 Nov 2024, 13:10 Johannes Schauer Marin Rodrigues, > <jo...@debian.org> wrote:
>> thank you for following up. thank *you* for your help >> Can you compare build logs between your schroot build and the unshare build >> to >> figure out where the extra time is spent? > > > i did a redirect of the output and then a diff. the main new differences > (apart from the untar) are > > - unshare installs fakeroot and libfakeroot along with > sbuild-build-depends-main-dummy > - schroot uses eatmydata by setting > LD_LIBRARY_PATH=/usr/lib/libeatmydata and LD_PRELOAD=libeatmydata.so I tried setting $ld_library_path = "/usr/lib/libeatmydata"; $build_environment ={ "LD_PRELOAD" => "/usr/lib/ibeatmydata.so" }; $environment_filter=[]; and the log has the same "Build environment" variables as schroot. But I get complaints ERROR: ld.so: object 'libeatmydata.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored. (four times, twice when listing the environment and twice before running dpkg-buildpackage) I dont know why schroot works - the libeatmydata is in /usr/lib/x86_64-linux-gnu/ (seems to be reported as #1016422) using "LD_PRELOAD" => "/usr/lib/x86_64-linux-gnu/libeatmydata.so" removes the warnings , and it does make a small difference to the build. But not much. I also added "export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libeatmydata.so not clear this made any further difference I also ran with all the above and calling eatmydata gbp buildpackage --verbose --no-run-piuparts --no-run-lintian --no-run-autopkgtest --mode=unshare # same warnings as above and this one seems the best LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libeatmydata.so gbp buildpackage --verbose --no-run-piuparts --no-run-lintian --no-run-autopkgtest --mode=unshare but no real speedup >> Maybe run sbuild --verbose under >> annotate-output? I will do this next