Hi,
The core-updates branch has been merged into master. As of
5ce3f93bc52280c7c2b1b96097e8cd4a62b53bb0 (committed on 2018/02/18),
which is after the merge, the following builds PASS or FAIL when run on
an x86_64-linux GuixSD system:
FAIL: aarch64-unknown-linux-gnu bootstrap-tarballs grafts
FAIL: aarch64-unknown-linux-gnu bootstrap-tarballs no-grafts
PASS: aarch64-unknown-linux-gnu guile-static grafts
PASS: aarch64-unknown-linux-gnu guile-static no-grafts
FAIL: arm-unknown-linux-gnueabihf bootstrap-tarballs grafts
FAIL: arm-unknown-linux-gnueabihf bootstrap-tarballs no-grafts
PASS: arm-unknown-linux-gnueabihf guile-static grafts
PASS: arm-unknown-linux-gnueabihf guile-static no-grafts
FAIL: i686-unknown-linux-gnu bootstrap-tarballs grafts
FAIL: i686-unknown-linux-gnu bootstrap-tarballs no-grafts
PASS: i686-unknown-linux-gnu guile-static grafts
PASS: i686-unknown-linux-gnu guile-static no-grafts
FAIL: mips64el-unknown-linux-gnu bootstrap-tarballs grafts
FAIL: mips64el-unknown-linux-gnu bootstrap-tarballs no-grafts
PASS: mips64el-unknown-linux-gnu guile-static grafts
PASS: mips64el-unknown-linux-gnu guile-static no-grafts
FAIL: x86_64-unknown-linux-gnu bootstrap-tarballs grafts
FAIL: x86_64-unknown-linux-gnu bootstrap-tarballs no-grafts
FAIL: x86_64-unknown-linux-gnu guile-static grafts
FAIL: x86_64-unknown-linux-gnu guile-static no-grafts
Here, PASS means it builds successfully. FAIL means it did not. The
second column is the target, the third column is the package, and the
fourth column is whether or not grafts were enabled. Note that
"guile-static" is short-hand for "-e '(@@ (gnu packages make-bootstrap)
%guile-static)'". So, for example, the first row means that the
following command failed when I tried it:
./pre-inst-env guix build --target=aarch64-unknown-linux-gnu \
bootstrap-tarballs
The failures can be grouped as follows:
* aarch64, arm, i686: For all of these targets, bootstrap-tarballs fails
because grep@3.1 fails. grep@3.1 fails because of errors like the
following:
Toggle snippet (55 lines)
make[2]: Entering directory '/tmp/guix-build-grep-3.1.drv-0/grep-3.1/src'
CC dfasearch.o
CC grep.o
CC kwsearch.o
CC kwset.o
CC pcresearch.o
CC searchutils.o
GEN egrep
GEN fgrep
CCLD grep
/gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_free_exec':
(.text+0x64d): undefined reference to `pthread_mutex_lock'
/gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_free_exec':
(.text+0x6ac): undefined reference to `pthread_mutex_unlock'
/gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_generate_code':
(.text+0x73e4): undefined reference to `pthread_mutex_lock'
/gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_generate_code':
(.text+0x74b0): undefined reference to `pthread_mutex_unlock'
/gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `sljit_generate_code':
(.text+0x7847): undefined reference to `pthread_mutex_unlock'
/gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `pcre_jit_free_unused_memory':
(.text+0x2462a): undefined reference to `pthread_mutex_lock'
/gnu/store/p2b76bgsx5pkpc59fvxmkfz47502awg5-pcre-8.41/lib/libpcre.a(libpcre_la-pcre_jit_compile.o): In function `pcre_jit_free_unused_memory':
(.text+0x24692): undefined reference to `pthread_mutex_unlock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_lock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:748: undefined reference to `pthread_mutex_lock'
/gnu/store/spfsrm8cqxh7qs8j76ml6x989z2hy49y-gcc-cross-i686-unknown-linux-gnu-5.5.0/lib/gcc/i686-unknown-linux-gnu/5.5.0/libgcc_eh.a(unwind-dw2-fde-dip.o): In function `__gthread_mutex_unlock':
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
/tmp/guix-build-gcc-cross-i686-unknown-linux-gnu-5.5.0.drv-0/build/i686-unknown-linux-gnu/libgcc/./gthr-default.h:778: undefined reference to `pthread_mutex_unlock'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:1317: grep] Error 1
make[2]: Leaving directory '/tmp/guix-build-grep-3.1.drv-0/grep-3.1/src'
make[1]: *** [Makefile:1301: all-recursive] Error 1
make[1]: Leaving directory '/tmp/guix-build-grep-3.1.drv-0/grep-3.1'
make: *** [Makefile:1242: all] Error 2
phase `build' failed after 14.3 seconds
builder for `/gnu/store/db1xy331abifx0r2jbi6q9zcbcmhf1b1-grep-3.1.drv' failed with exit code 1
* mips64el: bootstrap-tarballs fails because pcre@8.41 fails. pcre@8.41
fails because of the following error:
Toggle snippet (24 lines)
make[1]: Entering directory '/tmp/guix-build-pcre-8.41.drv-0/pcre-8.41'
CC libpcre_la-pcre_compile.lo
CC libpcre_la-pcre_byte_order.lo
CC libpcre_la-pcre_config.lo
CC libpcre_la-pcre_dfa_exec.lo
CC libpcre_la-pcre_exec.lo
CC libpcre_la-pcre_fullinfo.lo
CC libpcre_la-pcre_get.lo
CC libpcre_la-pcre_globals.lo
CC libpcre_la-pcre_jit_compile.lo
In file included from sljit/sljitLir.c:1747:0,
from pcre_jit_compile.c:62:
sljit/sljitNativeMIPS_common.c: In function ?sljit_has_cpu_feature?:
sljit/sljitNativeMIPS_common.c:506:3: error: a label can only be part of a statement and a declaration is not a statement
sljit_sw fir;
^
make[1]: *** [Makefile:1730: libpcre_la-pcre_jit_compile.lo] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/tmp/guix-build-pcre-8.41.drv-0/pcre-8.41'
make: *** [Makefile:1322: all] Error 2
phase `build' failed after 29.4 seconds
builder for `/gnu/store/16sgy03d1f21qkn8895nq8ddpa7a14vz-pcre-8.41.drv' failed with exit code 1
* x86_64: I'm not sure if it makes sense to cross-compile for x86_64 on
an x86_64 system, but I tried it anyway, and bootstrap-tarballs and
guile-static both fail because of an error like the following:
Toggle snippet (63 lines)
g++ -g -O2 -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common -DHAVE_CONFIG_H -static-libstdc++ -static-libgcc -o cc1 c/c-lang.o c-family/stub-objc.o attribs.o c/c-errors.o c/c-decl.o c/c-typeck.o c/c-convert.o c/c-aux-info.o c/c-objc-common.o c/c-parser.o c/c-array-notation.o c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o c-family/c-format.o c-family/c-gimplify.o c-family/c-lex.o c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o c-family/c-semantics.o c-family/c-ada-spec.o c-family/c-cilkplus.o c-family/array-notation-common.o c-family/cilk.o c-family/c-ubsan.o i386-c.o glibc-c.o \
cc1-checksum.o libbackend.a main.o tree-browser.o libcommon-target.a libcommon.a ../libcpp/libcpp.a ../libdecnumber/libdecnumber.a libcommon.a ../libcpp/libcpp.a ../libbacktrace/.libs/libbacktrace.a ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a -lisl -lmpc -lmpfr -lgmp -rdynamic -ldl -lz
g++ -g -O2 -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common -DHAVE_CONFIG_H -static-libstdc++ -static-libgcc -o cc1plus \
cp/cp-lang.o c-family/stub-objc.o cp/call.o cp/decl.o cp/expr.o cp/pt.o cp/typeck2.o cp/class.o cp/decl2.o cp/error.o cp/lex.o cp/parser.o cp/ptree.o cp/rtti.o cp/typeck.o cp/cvt.o cp/except.o cp/friend.o
cp/init.o cp/method.o cp/search.o cp/semantics.o cp/tree.o cp/repo.o cp/dump.o cp/optimize.o cp/mangle.o cp/cp-objcp-common.o cp/name-lookup.o cp/cxx-pretty-print.o cp/cp-cilkplus.o cp/cp-gimplify.o cp/cp-array-notation.o cp/lambda.o cp/vtable-class-hierarchy.o cp/constexpr.o cp/cp-ubsan.o attribs.o incpath.o c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o c-family/c-format.o c-family/c-gimplify.o c-family/c-lex.o c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o c-family/c-semantics.o c-family/c-ada-spec.o c-family/c-cilkplus.o c-family/array-notation-common.o c-family/cilk.o c-family/c-ubsan.o i386-c.o glibc-c.o cc1plus-checksum.o libbackend.a main.o tree-browser.o libcommon-target.a libcommon.a ../libcpp/libcpp.a ../libdecnumber/libdecnumber.a libcommon.a ../libcpp/libcpp.a ../libbacktrace/.libs/libbacktrace.a ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a -lisl -lmpc -lmpfr -lgmp -rdynamic -ldl -lz
echo | /tmp/guix-build-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv-0/build/./gcc/xgcc -B/tmp/guix-build-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv-0/build/./gcc/ -E -dM - | \
sed -n -e 's/^#define \([^_][a-zA-Z0-9_]*\).*/\1/p' \
-e 's/^#define \(_[^_A-Z][a-zA-Z0-9_]*\).*/\1/p' | \
sort -u > tmp-macro_list
/tmp/guix-build-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv-0/build/./gcc/cc1: error while loading shared libraries: libisl.so.15: cannot open shared object file: No such file or directory
/gnu/store/icz3hd36aqpjz5slyp4hhr8wsfbgiml1-bash-minimal-4.4.12/bin/bash ../../gcc-5.5.0/gcc/../move-if-change tmp-macro_list macro_list
echo timestamp > s-macro_list
rm -rf include-fixed; mkdir include-fixed
chmod a+rx include-fixed
if [ -d ../prev-gcc ]; then \
cd ../prev-gcc && \
make real-install-headers-tar DESTDIR=`pwd`/../gcc/ \
libsubdir=. ; \
else \
set -e; for ml in `cat fixinc_list`; do \
sysroot_headers_suffix=`echo ${ml} | sed -e 's/;.*$//'`; \
multi_dir=`echo ${ml} | sed -e 's/^[^;]*;//'`; \
fix_dir=include-fixed${multi_dir}; \
if ! false && test ! -d `echo /usr/include | sed -e :a -e 's,[^/]*/\.\.\/,,' -e ta`; then \
echo The directory that should contain system headers does not exist: >&2 ; \
echo " `echo /usr/include | sed -e :a -e 's,[^/]*/\.\.\/,,' -e ta`" >&2 ; \
tooldir_sysinc=`echo "/gnu/store/7yk3imgyc20dxbq8zn4d61m95d6pyzhr-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0/lib/gcc/x86_64-unknown-linux-gnu/5.5.0/../../../../x86_64-unknown-linux-gnu/sys-include" | sed -e :a -e "s,[^/]*/\.\.\/,," -e ta`; \
if test "x`echo /usr/include | sed -e :a -e 's,[^/]*/\.\.\/,,' -e ta`" = "x${tooldir_sysinc}"; \
then sleep 1; else exit 1; fi; \
fi; \
/gnu/store/icz3hd36aqpjz5slyp4hhr8wsfbgiml1-bash-minimal-4.4.12/bin/bash ../../gcc-5.5.0/gcc/../mkinstalldirs ${fix_dir}; \
chmod a+rx ${fix_dir} || true; \
(TARGET_MACHINE='x86_64-unknown-linux-gnu'; srcdir=`cd ../../gcc-5.5.0/gcc; ${PWDCMD-pwd}`; \
SHELL='/gnu/store/icz3hd36aqpjz5slyp4hhr8wsfbgiml1-bash-minimal-4.4.12/bin/bash'; MACRO_LIST=`${PWDCMD-pwd}`/macro_list ; \
gcc_dir=`${PWDCMD-pwd}` ; \
export TARGET_MACHINE srcdir SHELL MACRO_LIST && \
cd ../build-x86_64-unknown-linux-gnu/fixincludes && \
/gnu/store/icz3hd36aqpjz5slyp4hhr8wsfbgiml1-bash-minimal-4.4.12/bin/bash ./fixinc.sh "${gcc_dir}/${fix_dir}" \
`echo /usr/include | sed -e :a -e 's,[^/]*/\.\.\/,,' -e ta` ); \
rm -f ${fix_dir}/syslimits.h; \
if [ -f ${fix_dir}/limits.h ]; then \
mv ${fix_dir}/limits.h ${fix_dir}/syslimits.h; \
else \
cp ../../gcc-5.5.0/gcc/gsyslimits.h ${fix_dir}/syslimits.h; \
fi; \
chmod a+r ${fix_dir}/syslimits.h; \
done; \
fi
The directory that should contain system headers does not exist:
/usr/include
make[3]: *** [Makefile:2831: stmp-fixinc] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory '/tmp/guix-build-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv-0/build/gcc'
make[2]: *** [Makefile:4322: all-stage1-gcc] Error 2
make[2]: Leaving directory '/tmp/guix-build-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv-0/build'
make[1]: *** [Makefile:15652: stage1-bubble] Error 2
make[1]: Leaving directory '/tmp/guix-build-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv-0/build'
make: *** [Makefile:855: all] Error 2
phase `build' failed after 1398.8 seconds
builder for `/gnu/store/g5h8ch1lk9rgljdgrkykr4mhxibwwkj5-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv' failed with exit code 1
@ build-failed /gnu/store/g5h8ch1lk9rgljdgrkykr4mhxibwwkj5-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv - 1 builder for `/gnu/store/g5h8ch1lk9rgljdgrkykr4mhxibwwkj5-gcc-cross-sans-libc-x86_64-unknown-linux-gnu-5.5.0.drv' failed with exit code 1
Earlier in this bug report, on 2017/11/27, I reported that a command
like the following failed ("ERROR: In procedure load-thunk-from-memory:
No such file or directory"), even though using --no-grafts had been
suggested as a work-around:
/pre-inst-env guix build --no-grafts --target=mips64el-linux-gnu \
bootstrap-tarballs
By using git bisect, I was able to determine that the commit which
introduced that specific issue was
2acfe022a740f79b593348cc6362cc4ee8f33bb4, which updated
guile-static-stripped to 2.2.
In sum, the original errors are no longer occurring, which is great.
Now we need to fix the remaining problems listed above.
--
Chris