Hi,
Kaelyn Takata <kaelyn.alexi@protonmail.com> skribis:
Toggle quote (4 lines)
> * gnu/packages/mingw.scm (mingw): Update to 10.0.0.
> [arguments] Disable parallel building to avoid failures trying to access empty
> .a files.
Toggle quote (2 lines)
> * gnu/packages/mingw.scm (mingw-w64-tools): Update to 10.0.0.
Applied, thanks!
As discussed on IRC, on master (before the upgrade), linking an
executable fails:
Toggle snippet (31 lines)
$ guix describe
Generation 223 Aug 01 2022 00:30:24 (current)
guix ab59155
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: ab59155c5a38dda7efaceb47c7528578fcf0def4
$ guix build gzip --target=x86_64-w64-mingw32 -n --log-file
https://ci.guix.gnu.org/log/qsyn46vn7cvlhrmbds3666kmqp26as9q-gzip-1.10
$ wget -qO- https://ci.guix.gnu.org/log/qsyn46vn7cvlhrmbds3666kmqp26as9q-gzip-1.10 | gunzip | tail -20
/gnu/store/njkaba9vvqkali96xg47al7pcwjpx2w2-mingw-w64-x86_64-8.0.0/include/string.h:228: undefined reference to `__strcpy_chk'
x86_64-w64-mingw32-ld: gzip.o: in function `strcat':
/gnu/store/njkaba9vvqkali96xg47al7pcwjpx2w2-mingw-w64-x86_64-8.0.0/include/string.h:234: undefined reference to `__strcpy_chk'
x86_64-w64-mingw32-ld: lib/libgzip.a(openat-proc.o): in function `sprintf':
/gnu/store/njkaba9vvqkali96xg47al7pcwjpx2w2-mingw-w64-x86_64-8.0.0/include/stdio.h:372: undefined reference to `__chk_fail'
x86_64-w64-mingw32-ld: lib/libgzip.a(vasnprintf.o): in function `sprintf':
/gnu/store/njkaba9vvqkali96xg47al7pcwjpx2w2-mingw-w64-x86_64-8.0.0/include/stdio.h:372: undefined reference to `__chk_fail'
x86_64-w64-mingw32-ld: /gnu/store/njkaba9vvqkali96xg47al7pcwjpx2w2-mingw-w64-x86_64-8.0.0/include/stdio.h:372: undefined reference to `__chk_fail'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:1639: gzip.exe] Error 1
make[2]: Leaving directory '/tmp/guix-build-gzip-1.10.drv-0/gzip-1.10'
make[1]: *** [Makefile:1768: all-recursive] Error 1
make[1]: Leaving directory '/tmp/guix-build-gzip-1.10.drv-0/gzip-1.10'
make: *** [Makefile:1549: all] Error 2
error: in phase 'build': uncaught exception:
%exception #<&invoke-error program: "make" arguments: ("-j" "16") exit-status: 2 term-signal: #f stop-signal: #f>
phase `build' failed after 3.5 seconds
command "make" "-j" "16" failed with status 2
builder for `/gnu/store/g573vakmnipxc8454x3aji51fy5gvvpr-gzip-1.10.drv' failed with exit code 1
@ build-failed /gnu/store/g573vakmnipxc8454x3aji51fy5gvvpr-gzip-1.10.drv - 1 builder for `/gnu/store/g573vakmnipxc8454x3aji51fy5gvvpr-gzip-1.10.drv' failed with exit code 1
The bug is still there after the upgrade:
Toggle snippet (27 lines)
CCLD gzip.exe
x86_64-w64-mingw32-ld: gzip.o: in function `strcpy':
/gnu/store/7b119byi86gb3ab5x87ld9fz5xg5bwyd-mingw-w64-x86_64-10.0.0/include/string.h:228: undefined reference to `__memcpy_chk'
x86_64-w64-mingw32-ld: /gnu/store/7b119byi86gb3ab5x87ld9fz5xg5bwyd-mingw-w64-x86_64-10.0.0/include/string.h:228: undefined reference to `__strcpy_chk'
x86_64-w64-mingw32-ld: /gnu/store/7b119byi86gb3ab5x87ld9fz5xg5bwyd-mingw-w64-x86_64-10.0.0/include/string.h:228: undefined reference to `__memcpy_chk'
x86_64-w64-mingw32-ld: /gnu/store/7b119byi86gb3ab5x87ld9fz5xg5bwyd-mingw-w64-x86_64-10.0.0/include/string.h:228: undefined reference to `__memcpy_chk'
x86_64-w64-mingw32-ld: /gnu/store/7b119byi86gb3ab5x87ld9fz5xg5bwyd-mingw-w64-x86_64-10.0.0/include/string.h:228: undefined reference to `__stpcpy_chk'
x86_64-w64-mingw32-ld: gzip.o: in function `strcat':
/gnu/store/7b119byi86gb3ab5x87ld9fz5xg5bwyd-mingw-w64-x86_64-10.0.0/include/string.h:234: undefined reference to `__memcpy_chk'
x86_64-w64-mingw32-ld: gzip.o: in function `strcpy':
/gnu/store/7b119byi86gb3ab5x87ld9fz5xg5bwyd-mingw-w64-x86_64-10.0.0/include/string.h:228: undefined reference to `__stpcpy_chk'
x86_64-w64-mingw32-ld: gzip.o: in function `strcat':
/gnu/store/7b119byi86gb3ab5x87ld9fz5xg5bwyd-mingw-w64-x86_64-10.0.0/include/string.h:234: undefined reference to `__strcpy_chk'
x86_64-w64-mingw32-ld: gzip.o: in function `strcpy':
/gnu/store/7b119byi86gb3ab5x87ld9fz5xg5bwyd-mingw-w64-x86_64-10.0.0/include/string.h:228: undefined reference to `__strcpy_chk'
x86_64-w64-mingw32-ld: gzip.o: in function `strcat':
/gnu/store/7b119byi86gb3ab5x87ld9fz5xg5bwyd-mingw-w64-x86_64-10.0.0/include/string.h:234: undefined reference to `__strcpy_chk'
x86_64-w64-mingw32-ld: lib/libgzip.a(openat-proc.o): in function `sprintf':
/gnu/store/7b119byi86gb3ab5x87ld9fz5xg5bwyd-mingw-w64-x86_64-10.0.0/include/stdio.h:386: undefined reference to `__chk_fail'
x86_64-w64-mingw32-ld: lib/libgzip.a(vasnprintf.o): in function `sprintf':
/gnu/store/7b119byi86gb3ab5x87ld9fz5xg5bwyd-mingw-w64-x86_64-10.0.0/include/stdio.h:386: undefined reference to `__chk_fail'
x86_64-w64-mingw32-ld: /gnu/store/7b119byi86gb3ab5x87ld9fz5xg5bwyd-mingw-w64-x86_64-10.0.0/include/stdio.h:386: undefined reference to `__chk_fail'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:1639: gzip.exe] Error 1
make[2]: Leaving directory '/tmp/guix-build-gzip-1.10.drv-0/gzip-1.10'
So it’s not a regression, but certainly something we’ll have to address
to make cross-compilation to MinGW useful.
Thanks,
Ludo’.