Building on ltsc2025-1
(from ocaml/opam:windows-server-mingw-ltsc2025-opam)
2026-03-07 23:48.36 ---> using "63e5ddb9687855d0a0c4c5e0088f813758807605401f3a88b07751088826ddff" from cache
C:/: (user (uid 1000) (gid 1000))
C:/: (env OPAMPRECISETRACKING 1)
C:/: (env OPAMUTF8 never)
C:/: (env OPAMEXTERNALSOLVER builtin-0install)
C:/: (env OPAMCRITERIA +removed)
C:/: (env CI true)
C:/: (env OPAM_HEALTH_CHECK_CI true)
C:/: (run (shell "ln -f /usr/local/bin/opam-dev.exe /usr/local/bin/opam.exe"))
2026-03-07 23:48.36 ---> using "eb751f1617949fccf400da87a349c508e73323f3f0e3482f2cce8c46fbcb6c21" from cache
C:/: (run (network host)
(shell "rm -rf ~/opam-repository && git clone -q 'https://github.com/ocaml/opam-repository' ~/opam-repository && git -C ~/opam-repository checkout -q 31db989bcaf14647d9889b8903120d6202ac37a8"))
2026-03-07 23:48.36 ---> using "ef58fca6f6db70f2bdfd85579892df7c50e047d2e179a3be59dcaa5c5a2d773c" from cache
C:/: (run (shell "rm -rf ~/.opam && opam init -ya --bare ~/opam-repository"))
User configuration:
Updating ~\.bashrc.
[NOTE] Make sure that ~/.bashrc is well sourced in your ~\.bash_profile.
Added 9 lines after line 1 in ~\.bashrc.
2026-03-07 23:48.36 ---> using "c700dfaf6f2da6800841bb961abfee8cd8858dee38ab51c0793b149f1795270d" from cache
C:/: (run (cache (opam-archives (target "c:\\opam\\.opam\\download-cache")))
(network host)
(shell "opam switch create --repositories=default 'mingw-5.4' '5.4.0'"))
<><> Installing new switch packages <><><><><><><><><><><><><><><><><><><><><><>
Switch invariant: ["ocaml-base-compiler" {= "5.4.0"}]
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> installed arch-x86_64.1
-> installed base-bigarray.base
-> installed base-threads.base
-> installed base-unix.base
-> installed host-arch-x86_64.1
-> installed host-system-mingw.1
-> retrieved mingw-w64-shims.0.2.0 (cached)
-> installed conf-mingw-w64-gcc-x86_64.1
-> retrieved flexdll.0.44 (https://github.com/ocaml/flexdll/archive/refs/tags/0.44.tar.gz)
-> installed flexdll.0.44
-> installed ocaml-env-mingw64.1
-> installed ocaml-options-vanilla.1
-> installed system-mingw.1
-> installed mingw-w64-shims.0.2.0
-> retrieved ocaml-config.3 (2 extra sources)
-> retrieved ocaml-config.3 (2 extra sources)
-> retrieved ocaml-compiler.5.4.0 (https://github.com/ocaml/ocaml/releases/download/5.4.0/ocaml-5.4.0.tar.gz)
-> installed ocaml-compiler.5.4.0
-> installed ocaml-base-compiler.5.4.0
-> installed ocaml-config.3
-> installed ocaml.5.4.0
-> installed base-domains.base
-> installed base-effects.base
-> installed base-nnp.base
Done.
# To update the current shell environment, run: eval $(opam env --switch=mingw-5.4)
2026-03-07 23:48.36 ---> using "bde3e22405d3d4b8eb936b6a5924016abe757c72ef4284f806d0ffa633cf6608" from cache
C:/: (run (network host)
(shell "opam update --depexts"))
2026-03-07 23:48.36 ---> using "52107e23401ba5a409505a63e9d96ae2fb84390238c362f7049829fa18c5671f" from cache
C:/: (run (cache (opam-archives (target "c:\\opam\\.opam\\download-cache")))
(network host)
(shell "opam remove -y iomux.0.4\
\nopam install -vy iomux.0.4\
\nres=$?\
\nif [ $res = 31 ]; then\
\n if opam show -f x-ci-accept-failures: iomux.0.4 | grep -q 'ocaml/opam:windows-server-mingw-ltsc2025-opam'; then\
\n echo \"This package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\"\
\n exit 69\
\n fi\
\nfi \
\n\
\n\
\nexit $res"))
[NOTE] iomux.0.4 is not installed.
Nothing to do.
The following actions will be performed:
=== install 4 packages
- install csexp 1.5.2 [required by dune-configurator]
- install dune 3.21.1 [required by iomux]
- install dune-configurator 3.21.1 [required by iomux]
- install iomux 0.4
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing 1/11: [csexp.1.5.2: extract]
Processing 2/11: [csexp.1.5.2: extract] [dune.3.21.1, dune-configurator.3.21.1: extract]
Processing 3/11: [csexp.1.5.2: extract] [dune.3.21.1, dune-configurator.3.21.1: extract] [iomux.0.4: http]
-> retrieved csexp.1.5.2 (cached)
Processing 3/11: [dune.3.21.1, dune-configurator.3.21.1: extract] [iomux.0.4: http]
Processing 3/11: [dune.3.21.1, dune-configurator.3.21.1: extract] [iomux.0.4: extract]
-> retrieved iomux.0.4 (https://github.com/ocaml-multicore/ocaml-iomux/releases/download/v0.4/iomux-0.4.tbz)
Processing 3/11: [dune.3.21.1, dune-configurator.3.21.1: extract]
-> retrieved dune.3.21.1, dune-configurator.3.21.1 (cached)
Processing 4/11: [dune: ocaml 15]
+ C:\opam\.opam\mingw-5.4\bin\ocaml.exe "boot/bootstrap.ml" "-j" "15" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\dune.3.21.1)
- ocamlc -output-complete-exe -intf-suffix .dummy -g -o .duneboot.exe -I boot -I +unix unix.cma boot/types.ml boot/libs.ml boot/duneboot.ml
- .\.duneboot.exe -j 15
Processing 4/11: [dune: ./_boot/dune.exe build]
+ C:\opam\.opam\mingw-5.4\.opam-switch\build\dune.3.21.1\./_boot/dune.exe "build" "dune.install" "--release" "--profile" "dune-bootstrap" "-j" "15" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\dune.3.21.1)
-> compiled dune.3.21.1
-> installed dune.3.21.1
Processing 6/11: [csexp: dune build]
+ C:\opam\.opam\mingw-5.4\bin\dune.exe "build" "-p" "csexp" "-j" "15" "@install" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\csexp.1.5.2)
- (cd _build/default && C:\opam\.opam\mingw-5.4\bin\ocamlc.opt.exe -w -40 -g -bin-annot -bin-annot-occurrences -I src/.csexp.objs/byte -cmi-file src/.csexp.objs/byte/csexp.cmi -no-alias-deps -o src/.csexp.objs/byte/csexp.cmo -c -impl src/csexp.ml)
- File "src/csexp.ml", line 236, characters 7-14:
- 236 | [@@inlined always]
- ^^^^^^^
- Warning 53 [misplaced-attribute]: the inlined attribute cannot appear in this context
- (cd _build/default && C:\opam\.opam\mingw-5.4\bin\ocamlopt.opt.exe -w -40 -g -I src/.csexp.objs/byte -I src/.csexp.objs/native -cmi-file src/.csexp.objs/byte/csexp.cmi -no-alias-deps -o src/.csexp.objs/native/csexp.cmx -c -impl src/csexp.ml)
- File "src/csexp.ml", line 236, characters 7-14:
- 236 | [@@inlined always]
- ^^^^^^^
- Warning 53 [misplaced-attribute]: the inlined attribute cannot appear in this context
-> compiled csexp.1.5.2
-> installed csexp.1.5.2
Processing 8/11: [dune-configurator: rm]
+ C:\cygwin64\bin\rm.exe "-rf" "vendor/csexp" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\dune-configurator.3.21.1)
+ C:\cygwin64\bin\rm.exe "-rf" "vendor/pp" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\dune-configurator.3.21.1)
Processing 8/11: [dune-configurator: dune build]
+ C:\opam\.opam\mingw-5.4\bin\dune.exe "build" "-p" "dune-configurator" "-j" "15" "@install" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\dune-configurator.3.21.1)
-> compiled dune-configurator.3.21.1
-> installed dune-configurator.3.21.1
Processing 10/11: [iomux: dune build]
+ C:\opam\.opam\mingw-5.4\bin\dune.exe "build" "-p" "iomux" "-j" "15" "@install" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\iomux.0.4)
- File "lib/dune", lines 1-4, characters 0-77:
- 1 | (rule
- 2 | (targets config.ml config.h)
- 3 | (action
- 4 | (run ./include/discover.exe)))
- (cd _build/default/lib && include\discover.exe)
- compiling c program:
- |
- | #define _GNU_SOURCE /* for linux */
- | #include <poll.h>
- | #include <stddef.h>
- | #include <strings.h>
- |
- | int
- | main(void)
- | {
- | struct pollfd fds;
- | struct timespec ts;
- |
- | bzero(&fds, sizeof(fds));
- | bzero(&ts, sizeof(ts));
- |
- | return (ppoll(&fds, 0, &ts, NULL));
- | }
- run: x86_64-w64-mingw32-gcc -O2 -fno-strict-aliasing -fwrapv -mms-bitfields -I C:/opam/.opam/mingw-5.4/lib/ocaml -o C:\cygwin64\tmp\ocaml-configuratorbd7961\c-test-0\test.exe C:\cygwin64\tmp\ocaml-configuratorbd7961\c-test-0\test.c -lws2_32 -lole32 -luuid -lversion -lshlwapi -lsynchronization -l:libpthread.a -lgcc_eh
- -> process exited with code 1
- -> stdout:
- -> stderr:
- | C:\cygwin64\tmp\ocaml-configuratorbd7961\c-test-0\test.c:3:10: fatal error: poll.h: No such file or directory
- | 3 | #include <poll.h>
- | | ^~~~~~~~
- | compilation terminated.
- writing header file config.h
- | #ifndef DISCOVER_CONFIG_H
- | #define DISCOVER_CONFIG_H
- | #undef HAS_PPOLL
- | #endif
- compiling c program:
- | #include <stdio.h>
- | #include <poll.h>
- |
- |
- | #define DUNE_ABS(x) ((x >= 0)? x: -(x))
- | #define DUNE_D0(x) ('0'+(DUNE_ABS(x)/1 )%10)
- | #define DUNE_D1(x) ('0'+(DUNE_ABS(x)/10 )%10), DUNE_D0(x)
- | #define DUNE_D2(x) ('0'+(DUNE_ABS(x)/100 )%10), DUNE_D1(x)
- | #define DUNE_D3(x) ('0'+(DUNE_ABS(x)/1000 )%10), DUNE_D2(x)
- | #define DUNE_D4(x) ('0'+(DUNE_ABS(x)/10000 )%10), DUNE_D3(x)
- | #define DUNE_D5(x) ('0'+(DUNE_ABS(x)/100000 )%10), DUNE_D4(x)
- | #define DUNE_D6(x) ('0'+(DUNE_ABS(x)/1000000 )%10), DUNE_D5(x)
- | #define DUNE_D7(x) ('0'+(DUNE_ABS(x)/10000000 )%10), DUNE_D6(x)
- | #define DUNE_D8(x) ('0'+(DUNE_ABS(x)/100000000 )%10), DUNE_D7(x)
- | #define DUNE_D9(x) ('0'+(DUNE_ABS(x)/1000000000)%10), DUNE_D8(x)
- | #define DUNE_SIGN(x) ((x >= 0)? '0': '-')
- |
- |
- | const char s0[] = {
- | 'B', 'E', 'G', 'I', 'N', '-', '0', '-',
- | DUNE_SIGN((POLLIN)),
- | DUNE_D9((POLLIN)),
- | '-', 'E', 'N', 'D'
- | };
- |
- |
- | const char s1[] = {
- | 'B', 'E', 'G', 'I', 'N', '-', '1', '-',
- | DUNE_SIGN((POLLPRI)),
- | DUNE_D9((POLLPRI)),
- | '-', 'E', 'N', 'D'
- | };
- |
- |
- | const char s2[] = {
- | 'B', 'E', 'G', 'I', 'N', '-', '2', '-',
- | DUNE_SIGN((POLLOUT)),
- | DUNE_D9((POLLOUT)),
- | '-', 'E', 'N', 'D'
- | };
- |
- |
- | const char s3[] = {
- | 'B', 'E', 'G', 'I', 'N', '-', '3', '-',
- | DUNE_SIGN((POLLERR)),
- | DUNE_D9((POLLERR)),
- | '-', 'E', 'N', 'D'
- | };
- |
- |
- | const char s4[] = {
- | 'B', 'E', 'G', 'I', 'N', '-', '4', '-',
- | DUNE_SIGN((POLLHUP)),
- | DUNE_D9((POLLHUP)),
- | '-', 'E', 'N', 'D'
- | };
- |
- |
- | const char s5[] = {
- | 'B', 'E', 'G', 'I', 'N', '-', '5', '-',
- | DUNE_SIGN((POLLNVAL)),
- | DUNE_D9((POLLNVAL)),
- | '-', 'E', 'N', 'D'
- | };
- |
- |
- | const char s6[] = {
- | 'B', 'E', 'G', 'I', 'N', '-', '6', '-',
- | DUNE_SIGN((sizeof(struct pollfd))),
- | DUNE_D9((sizeof(struct pollfd))),
- | '-', 'E', 'N', 'D'
- | };
- |
- run: x86_64-w64-mingw32-gcc -O2 -fno-strict-aliasing -fwrapv -mms-bitfields -I C:/opam/.opam/mingw-5.4/lib/ocaml -o C:\cygwin64\tmp\ocaml-configuratorbd7961\c-test-2\test.o -c C:\cygwin64\tmp\ocaml-configuratorbd7961\c-test-2\test.c -lws2_32 -lole32 -luuid -lversion -lshlwapi -lsynchronization -l:libpthread.a -lgcc_eh
- -> process exited with code 1
- -> stdout:
- -> stderr:
- | C:\cygwin64\tmp\ocaml-configuratorbd7961\c-test-2\test.c:2:10: fatal error: poll.h: No such file or directory
- | 2 | #include <poll.h>
- | | ^~~~~~~~
- | compilation terminated.
- Error: failed to compile program
[ERROR] The compilation of iomux.0.4 failed at "dune build -p iomux -j 15 @install".
#=== ERROR while compiling iomux.0.4 ==========================================#
# context 2.5.0 | win32/x86_64 | ocaml-base-compiler.5.4.0 | git+file://C:/cygwin64/home/opam/opam-repository
# path C:\opam\.opam\mingw-5.4\.opam-switch\build\iomux.0.4
# command C:\opam\.opam\mingw-5.4\bin\dune.exe build -p iomux -j 15 @install
# exit-code 1
# env-file C:\opam\.opam\log\iomux-9048-36f99a.env
# output-file C:\opam\.opam\log\iomux-9048-36f99a.out
### output ###
# compiling c program:
# [...]
# | };
# |
# run: x86_64-w64-mingw32-gcc -O2 -fno-strict-aliasing -fwrapv -mms-bitfields -I C:/opam/.opam/mingw-5.4/lib/ocaml -o C:\cygwin64\tmp\ocaml-configuratorbd7961\c-test-2\test.o -c C:\cygwin64\tmp\ocaml-configuratorbd7961\c-test-2\test.c -lws2_32 -lole32 -luuid -lversion -lshlwapi -lsynchronization -l:libpthread.a -lgcc_eh
# -> process exited with code 1
# -> stdout:
# -> stderr:
# | C:\cygwin64\tmp\ocaml-configuratorbd7961\c-test-2\test.c:2:10: fatal error: poll.h: No such file or directory
# | 2 | #include <poll.h>
# | | ^~~~~~~~
# | compilation terminated.
# Error: failed to compile program
<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
+- The following actions failed
| - build iomux 0.4
+-
+- The following changes have been performed
| - install csexp 1.5.2
| - install dune 3.21.1
| - install dune-configurator 3.21.1
+-
# To update the current shell environment, run: eval $(opam env)
The former state can be restored with:
C:\cygwin64\usr\local\bin\opam.exe switch import "C:\\opam\\.opam\\mingw-5.4\\.opam-switch\\backup\\state-20260307234859.export"
'C:\cygwin64\usr\local\bin\opam.exe install -vy iomux.0.4' failed.
"C:\cygwin64\bin\bash.exe" "-lc" "opam remove -y iomux.0.4
opam install -vy iomux.0.4
res=$?
if [ $res = 31 ]; then
if opam show -f x-ci-accept-failures: iomux.0.4 | grep -q 'ocaml/opam:windows-server-mingw-ltsc2025-opam'; then
echo "This package failed and has been disabled for CI using the 'x-ci-accept-failures' field."
exit 69
fi
fi
exit $res" failed with exit status 31
Failed: Build failed