OCamllabs icon Home|Differences with the last checks|Previous runs


Building on ltsc2025-1

(from ocaml/opam:windows-server-mingw-ltsc2025-opam)
2026-03-07 15:43.11 ---> 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 15:43.11 ---> 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 15:43.11 ---> 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 15:43.11 ---> 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 15:43.11 ---> using "bde3e22405d3d4b8eb936b6a5924016abe757c72ef4284f806d0ffa633cf6608" from cache

C:/: (run (network host)
          (shell "opam update --depexts"))
2026-03-07 15:43.11 ---> using "52107e23401ba5a409505a63e9d96ae2fb84390238c362f7049829fa18c5671f" from cache

C:/: (run (cache (opam-archives (target "c:\\opam\\.opam\\download-cache")))
          (network host)
          (shell  "opam remove -y euler.0.1\
                 \nopam install -vy euler.0.1\
                 \nres=$?\
                 \nif [ $res = 31 ]; then\
                 \n    if opam show -f x-ci-accept-failures: euler.0.1 | 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"))
Nothing to do.
[NOTE] euler.0.1 is not installed.

The following actions will be performed:
=== install 7 packages
  - install containers        3.18   [required by euler]
  - install csexp             1.5.2  [required by dune-configurator]
  - install dune              3.21.1 [required by euler]
  - install dune-configurator 3.21.1 [required by containers]
  - install either            1.0.0  [required by containers]
  - install euler             0.1
  - install seq               base   [required by euler]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing  1/20: [containers.3.18: http]
Processing  2/20: [containers.3.18: http] [csexp.1.5.2: extract]
Processing  3/20: [containers.3.18: http] [csexp.1.5.2: extract] [dune.3.21.1, dune-configurator.3.21.1: extract]
Processing  3/20: [containers.3.18: extract] [csexp.1.5.2: extract] [dune.3.21.1, dune-configurator.3.21.1: extract]
-> retrieved csexp.1.5.2  (cached)
Processing  3/20: [containers.3.18: extract] [dune.3.21.1, dune-configurator.3.21.1: extract]
Processing  4/20: [containers.3.18: extract] [dune.3.21.1, dune-configurator.3.21.1: extract] [either.1.0.0: extract]
-> retrieved either.1.0.0  (cached)
Processing  4/20: [containers.3.18: extract] [dune.3.21.1, dune-configurator.3.21.1: extract]
Processing  5/20: [containers.3.18: extract] [dune.3.21.1, dune-configurator.3.21.1: extract] [euler.0.1: http]
-> retrieved containers.3.18  (https://github.com/c-cube/ocaml-containers/releases/download/v3.18/containers-3.18.tbz)
Processing  5/20: [dune.3.21.1, dune-configurator.3.21.1: extract] [euler.0.1: http]
-> retrieved seq.base  (cached)
Processing  6/20: [dune.3.21.1, dune-configurator.3.21.1: extract] [euler.0.1: http]
Processing  7/20: [dune.3.21.1, dune-configurator.3.21.1: extract] [euler.0.1: http]
-> installed seq.base
Processing  8/20: [dune.3.21.1, dune-configurator.3.21.1: extract] [euler.0.1: http]
Processing  8/20: [dune.3.21.1, dune-configurator.3.21.1: extract] [euler.0.1: extract]
-> retrieved euler.0.1  (https://github.com/gmevel/euler-lib/releases/download/0.1/euler-0.1.tbz)
Processing  8/20: [dune.3.21.1, dune-configurator.3.21.1: extract]
-> retrieved dune.3.21.1, dune-configurator.3.21.1  (cached)
Processing  9/20: [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  9/20: [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 11/20: [csexp: dune build]
Processing 12/20: [csexp: dune build] [either: 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
Processing 12/20: [either: dune build]
-> installed csexp.1.5.2
Processing 13/20: [either: dune build]
Processing 14/20: [dune-configurator: rm] [either: dune build]
+ C:\opam\.opam\mingw-5.4\bin\dune.exe "build" "-p" "either" "-j" "15" "@install" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\either.1.0.0)
-> compiled  either.1.0.0
Processing 14/20: [dune-configurator: rm]
-> installed either.1.0.0
Processing 15/20: [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 15/20: [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 17/20: [containers: dune build]
+ C:\opam\.opam\mingw-5.4\bin\dune.exe "build" "-p" "containers" "-j" "15" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\containers.3.18)
-> compiled  containers.3.18
-> installed containers.3.18
Processing 19/20: [euler: dune build]
+ C:\opam\.opam\mingw-5.4\bin\dune.exe "build" "-p" "euler" "-j" "15" "@install" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\euler.0.1)
- (cd _build/default && C:\opam\.opam\mingw-5.4\bin\ocamlc.opt.exe -w -40 -w +a@8@14@29@28-6-32-60 -short-paths -principal -strict-sequence -safe-string -unboxed-types -g -bin-annot -bin-annot-occurrences -I .Euler.objs/byte -I C:\opam\.opam\mingw-5.4\lib\containers -I C:\opam\.opam\mingw-5.4\lib\containers\domain -I C:\opam\.opam\mingw-5.4\lib\containers\monomorphic -I C:\opam\.opam\mingw-5.4\lib\either -I C:\opam\.opam\mingw-5.4\lib\seq -no-alias-deps -open Euler__ -o .Euler.objs/byte/euler__Common.cmo -c -impl Common.ml)
- File "Common.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
- (cd _build/default && C:\opam\.opam\mingw-5.4\bin\ocamlc.opt.exe -w -40 -w +a@8@14@29@28-6-32-60 -short-paths -principal -strict-sequence -safe-string -unboxed-types -g -bin-annot -bin-annot-occurrences -I .Euler.objs/byte -I C:\opam\.opam\mingw-5.4\lib\containers -I C:\opam\.opam\mingw-5.4\lib\containers\domain -I C:\opam\.opam\mingw-5.4\lib\containers\monomorphic -I C:\opam\.opam\mingw-5.4\lib\either -I C:\opam\.opam\mingw-5.4\lib\seq -no-alias-deps -open Euler__ -o .Euler.objs/byte/euler__Arith.cmo -c -impl Arith.ml)
- File "Arith.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
- (cd _build/default && C:\opam\.opam\mingw-5.4\bin\ocamlc.opt.exe -w -40 -w +a@8@14@29@28-6-32-60 -short-paths -principal -strict-sequence -safe-string -unboxed-types -g -bin-annot -bin-annot-occurrences -I .Euler.objs/byte -I C:\opam\.opam\mingw-5.4\lib\containers -I C:\opam\.opam\mingw-5.4\lib\containers\domain -I C:\opam\.opam\mingw-5.4\lib\containers\monomorphic -I C:\opam\.opam\mingw-5.4\lib\either -I C:\opam\.opam\mingw-5.4\lib\seq -no-alias-deps -open Euler__ -o .Euler.objs/byte/euler__Modular.cmo -c -impl Modular.ml)
- File "Modular.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
- (cd _build/default && C:\opam\.opam\mingw-5.4\bin\ocamlc.opt.exe -w -40 -w +a@8@14@29@28-6-32-60 -short-paths -principal -strict-sequence -safe-string -unboxed-types -g -bin-annot -bin-annot-occurrences -I .Euler.objs/byte -I C:\opam\.opam\mingw-5.4\lib\containers -I C:\opam\.opam\mingw-5.4\lib\containers\domain -I C:\opam\.opam\mingw-5.4\lib\containers\monomorphic -I C:\opam\.opam\mingw-5.4\lib\either -I C:\opam\.opam\mingw-5.4\lib\seq -no-alias-deps -open Euler__ -o .Euler.objs/byte/euler__Diophantine.cmo -c -impl Diophantine.ml)
- File "Diophantine.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
- (cd _build/default && C:\opam\.opam\mingw-5.4\bin\ocamlc.opt.exe -w -40 -w +a@8@14@29@28-6-32-60 -short-paths -principal -strict-sequence -safe-string -unboxed-types -g -bin-annot -bin-annot-occurrences -I .Euler.objs/byte -I C:\opam\.opam\mingw-5.4\lib\containers -I C:\opam\.opam\mingw-5.4\lib\containers\domain -I C:\opam\.opam\mingw-5.4\lib\containers\monomorphic -I C:\opam\.opam\mingw-5.4\lib\either -I C:\opam\.opam\mingw-5.4\lib\seq -no-alias-deps -open Euler__ -o .Euler.objs/byte/euler__Primes__data_preculling.cmo -c -impl Primes__data_preculling.ml)
- File "Primes__data_preculling.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
- (cd _build/default && C:\opam\.opam\mingw-5.4\bin\ocamlc.opt.exe -w -40 -w +a@8@14@29@28-6-32-60 -short-paths -principal -strict-sequence -safe-string -unboxed-types -g -bin-annot -bin-annot-occurrences -I .Euler.objs/byte -I C:\opam\.opam\mingw-5.4\lib\containers -I C:\opam\.opam\mingw-5.4\lib\containers\domain -I C:\opam\.opam\mingw-5.4\lib\containers\monomorphic -I C:\opam\.opam\mingw-5.4\lib\either -I C:\opam\.opam\mingw-5.4\lib\seq -no-alias-deps -open Euler__ -o .Euler.objs/byte/euler__Primes.cmo -c -impl Primes.ml)
- File "Primes.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
- File "dune", lines 1-22, characters 0-454:
-  1 | (library
-  2 |  (public_name euler)
-  3 |  (name Euler)
- ....
- 20 |    ))
- 21 |  (ocamlopt_flags
- 22 |   (:standard -inline=5 -ccopt -Ofast)))
- (cd _build/default && C:\opam\.opam\mingw-5.4\bin\ocamlopt.opt.exe -w -40 -w +a@8@14@29@28-6-32-60 -short-paths -principal -strict-sequence -safe-string -unboxed-types -g -inline=5 -ccopt -Ofast -shared -linkall -I . -o Euler.cmxs Euler.cmxa)
- flexlink: unknown option '-Ofast'.
- FlexDLL version 0.44
- 
- Usage:
-   flexlink -o <result.dll/exe> file1.obj file2.obj ... -- <extra linker arguments>
- 
-   -o                  Choose the name of the output file
-   -exe                Link the main program as an exe file
-   -maindll            Link the main program as a dll file
-   -noflexdllobj       Do not add the Flexdll runtime object (for exe)
-   -noentry            Do not use the Flexdll entry point (for dll)
-   -noexport           Do not export any symbol
-   -norelrelocs        Ensure that no relative relocation is generated
-   -base               Specify base address (Win64 only)
-   -pthread            Pass -pthread to the linker
-   -I <dir>            Add a directory where to search for files
-   -L <dir>            Add a directory where to search for files
-   -l <lib>            Library file
-   -chain {msvc|msvc64|cygwin64|mingw|mingw64|gnat|gnat64|ld}
-                       Choose which linker to use
-   -use-linker <cmd>   Choose an alternative linker to use
-   -use-mt <cmd>       Choose an alternative manifest tool to use
-   -x64                (Deprecated)
-   -defaultlib <obj>   External object (no export, no import)
-   -save-temps         Do not delete intermediate files
-   -implib             Do not delete the generated import library
-   -outdef             Produce a def file with exported symbols
-   -v                  Increment verbosity (can be repeated)
-   -show-exports       Show exported symbols
-   -show-imports       Show imported symbols
-   -dry                Show the linker command line, do not actually run it
-   -dump               Only dump the content of object files
-   -patch              Only patch the target image (to be used with -stack)
-   -nocygpath          Do not use cygpath (default for msvc, mingw)
-   -cygpath            Use cygpath (default for cygwin)
-   -no-merge-manifest  Do not merge the manifest (takes precedence over -merge-manifest)
-   -merge-manifest     Merge manifest to the dll or exe (if generated)
-   -real-manifest      Use the generated manifest (default behavior)
-   -default-manifest   Use the default manifest (default.manifest/default_amd64.manifest)
-   -export <sym>       Explicitly export a symbol
-   -noreexport         Do not reexport symbols imported from import libraries
-   -where              Show the FlexDLL directory
-   -nounderscore       Normal symbols are not prefixed with an underscore
-   -nodefaultlibs      Do not assume any default library
-   -builtin            Use built-in linker to produce a dll
-   -explain            Explain why library objects are linked
-   -subsystem <id>     Set the subsystem (default: console)
-   -custom-crt         Use a custom CRT
-   -stack <int>        Set the stack reserve in the resulting image
-   -link <option>      Next argument is passed verbatim to the linker
-   -g                  (Ignored)
-   -D <symbol>         (Ignored)
-   -U <symbol>         (Ignored)
-   --                  Following arguments are passed verbatim to the linker
-   -version            Print linker version and FlexDLL directory and exit
-   -vnum               Print linker version number and exit
-   -help               Display this list of options
-   --help              Display this list of options
- 
- Notes:
- * The -I, -l and -L options do not need to be separated from their argument.
- * An option like /linkXXX is an abbrevation for '-link XXX'.
- * An option like -Wl,-XXX is an abbreviation for '-link -XXX'.
- * FlexDLL's object files are searched by default in the same directory as
-   flexlink, or in the directory given by the environment variable FLEXDIR
-   if it is defined.
- * Extra argument can be passed in the environment variable FLEXLINKFLAGS.
- 
- Homepage: https://github.com/ocaml/flexdll
- File "caml_startup", line 1:
- Error: Error during linking (exit code 2)
[ERROR] The compilation of euler.0.1 failed at "dune build -p euler -j 15 @install".

#=== ERROR while compiling euler.0.1 ==========================================#
# 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\euler.0.1
# command              C:\opam\.opam\mingw-5.4\bin\dune.exe build -p euler -j 15 @install
# exit-code            1
# env-file             C:\opam\.opam\log\euler-6136-ca0f44.env
# output-file          C:\opam\.opam\log\euler-6136-ca0f44.out
### output ###
# [...]
# Notes:
# * The -I, -l and -L options do not need to be separated from their argument.
# * An option like /linkXXX is an abbrevation for '-link XXX'.
# * An option like -Wl,-XXX is an abbreviation for '-link -XXX'.
# * FlexDLL's object files are searched by default in the same directory as
#   flexlink, or in the directory given by the environment variable FLEXDIR
#   if it is defined.
# * Extra argument can be passed in the environment variable FLEXLINKFLAGS.
# 
# Homepage: https://github.com/ocaml/flexdll
# File "caml_startup", line 1:
# Error: Error during linking (exit code 2)



<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
+- The following actions failed
| - build euler 0.1
+- 
+- The following changes have been performed
| - install containers        3.18
| - install csexp             1.5.2
| - install dune              3.21.1
| - install dune-configurator 3.21.1
| - install either            1.0.0
| - install seq               base
+- 
# 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-20260307155053.export"
'C:\cygwin64\usr\local\bin\opam.exe install -vy euler.0.1' failed.
"C:\cygwin64\bin\bash.exe" "-lc" "opam remove -y euler.0.1
opam install -vy euler.0.1
res=$?
if [ $res = 31 ]; then
    if opam show -f x-ci-accept-failures: euler.0.1 | 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