Bug#996953: perl: make -j72 failing with a text file busy error

gyptazy at gyptazy.ch gyptazy at gyptazy.ch
Wed Feb 16 11:57:11 GMT 2022


Hey Cedric,

I can confirm this issue when rebuilding Perl on powerful systems. Multiple builds of ‚generate_uudmap.o‘ are
created during the compile time and at some point it fails with:

    make -j88 […]
    ./generate_uudmap uudmap.h bitcount.h mg_data.h
    6584make[3]: ./generate_uudmap: Text file busy
    6585make[3]: *** [Makefile:329: bitcount.h] Error 127

As a result, I patched the ‚rules‘ file to run ‚dh_auto_build‘ with ‚--no-parallel‘ option.
You can find attached my patch file:

Subject: Avoid build failures on powerful machines

+++ perl-5.34.0/debian/rules
@@ -115,11 +115,11 @@
 	if [ "$*" = "shared" ]; then \
 	  ln -s libperl.so.$(fullversion) build-$*/libperl.so.$(version); \
 	  ln -s libperl.so.$(version) build-$*/libperl.so; \
-	  dh_auto_build --builddirectory=build-$* -- SHRPLDFLAGS='$$(LDDLFLAGS) -Wl,-soname,libperl.so.$(version)'; \
+	  dh_auto_build --no-parallel --builddirectory=build-$* -- SHRPLDFLAGS='$$(LDDLFLAGS) -Wl,-soname,libperl.so.$(version)'; \
 	elif [ "$*" = "debug" ]; then \
-	  dh_auto_build --builddirectory=build-$* -- perl; \
+	  dh_auto_build --no-parallel --builddirectory=build-$* -- perl; \
 	else \
-	  dh_auto_build --builddirectory=build-$*; \
+	  dh_auto_build --no-parallel --builddirectory=build-$*; \
 	fi
 	touch $@


Regards,
gyptazy

-------------- next part --------------
A non-text attachment was scrubbed...
Name: perl_debian_rules.patch
Type: application/octet-stream
Size: 790 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/perl-maintainers/attachments/20220216/53f7fb85/attachment.obj>
-------------- next part --------------




More information about the Perl-maintainers mailing list