Skip to content

xz failed to build when with MAKEFLAGS=-j4 set

I hit the problem when running make all in the redox repo, running ./clean.sh xz followed by ./cook.sh xz did not fix the problem, after running unset MAKEFLAGS the compilation succeeded.

Here is a trimmed version of the logs:

cook - xz unstage
make[1]: Entering directory '/mnt/test/code/redox/cookbook/recipes/xz/build'
Making install in src
make[2]: Entering directory '/mnt/test/code/redox/cookbook/recipes/xz/build/src'
Making install in liblzma
make[3]: Entering directory '/mnt/test/code/redox/cookbook/recipes/xz/build/src/liblzma'
Making install in api
make[4]: Entering directory '/mnt/test/code/redox/cookbook/recipes/xz/build/src/liblzma/api'
make[5]: Entering directory '/mnt/test/code/redox/cookbook/recipes/xz/build/src/liblzma/api'
make[5]: Nothing to be done for 'install-exec-am'.
 /usr/bin/mkdir -p '/mnt/test/code/redox/cookbook/recipes/xz/stage//include'
 /usr/bin/mkdir -p '/mnt/test/code/redox/cookbook/recipes/xz/stage//include/lzma'
 /usr/bin/install -c -m 644  lzma/base.h lzma/bcj.h lzma/block.h lzma/check.h lzma/container.h lzma/delta.h lzma/filter.h lzma/hardware.h lzma/index.h lzma/index_hash.h lzma/lzma12.h lzma/stream_flag
s.h lzma/version.h lzma/vli.h '/mnt/test/code/redox/cookbook/recipes/xz/stage//include/lzma'
 /usr/bin/install -c -m 644  lzma.h '/mnt/test/code/redox/cookbook/recipes/xz/stage//include/.'
make[5]: Leaving directory '/mnt/test/code/redox/cookbook/recipes/xz/build/src/liblzma/api'
make[4]: Leaving directory '/mnt/test/code/redox/cookbook/recipes/xz/build/src/liblzma/api'
make[4]: Entering directory '/mnt/test/code/redox/cookbook/recipes/xz/build/src/liblzma'
make[5]: Entering directory '/mnt/test/code/redox/cookbook/recipes/xz/build/src/liblzma'
 /usr/bin/mkdir -p '/mnt/test/code/redox/cookbook/recipes/xz/stage//lib'
 /usr/bin/mkdir -p '/mnt/test/code/redox/cookbook/recipes/xz/stage//lib/pkgconfig'
 /bin/sh ../../libtool   --mode=install /usr/bin/install -c   liblzma.la '/mnt/test/code/redox/cookbook/recipes/xz/stage//lib'
make[5]: *** write jobserver: Bad file descriptor.  Stop.
make[5]: *** Waiting for unfinished jobs....
 /usr/bin/install -c -m 644 liblzma.pc '/mnt/test/code/redox/cookbook/recipes/xz/stage//lib/pkgconfig'
make[5]: *** write jobserver: Bad file descriptor.  Stop.
make[4]: *** [Makefile:1800: install-am] Error 2
make[4]: Leaving directory '/mnt/test/code/redox/cookbook/recipes/xz/build/src/liblzma'
make[3]: *** [Makefile:1636: install-recursive] Error 1
make[3]: Leaving directory '/mnt/test/code/redox/cookbook/recipes/xz/build/src/liblzma'
make[2]: *** [Makefile:420: install-recursive] Error 1
make[2]: Leaving directory '/mnt/test/code/redox/cookbook/recipes/xz/build/src'
make[1]: *** [Makefile:613: install-recursive] Error 1
make[1]: Leaving directory '/mnt/test/code/redox/cookbook/recipes/xz/build'
./repo.sh failed.make: *** [mk/filesystem.mk:14: build/filesystem.bin] Error 1
libtool: install: /usr/bin/install -c .libs/liblzma.lai /mnt/test/code/redox/cookbook/recipes/xz/stage//lib/liblzma.la
libtool: install: /usr/bin/install -c .libs/liblzma.a /mnt/test/code/redox/cookbook/recipes/xz/stage//lib/liblzma.a
libtool: install: chmod 644 /mnt/test/code/redox/cookbook/recipes/xz/stage//lib/liblzma.a
libtool: install: x86_64-unknown-redox-ranlib /mnt/test/code/redox/cookbook/recipes/xz/stage//lib/liblzma.a
libtool: warning: remember to run 'libtool --finish //lib'

I'm running archlinux, I did execute pacman -Syu prior to running make. The versions are:

This feels more like a problem with xz's build, however it may be interesting to unset the environment variable from the recipe until the problem is fixed.

Edited by Augusto Hack