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


Building on ltsc2025-3

(from ocaml/opam:windows-server-mingw-ltsc2025-opam)
2026-03-09 02:22.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-09 02:22.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-09 02:22.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-09 02:22.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)
-> retrieved flexdll.0.44  (https://github.com/ocaml/flexdll/archive/refs/tags/0.44.tar.gz)
-> installed flexdll.0.44
-> installed ocaml-options-vanilla.1
-> installed conf-mingw-w64-gcc-x86_64.1
-> installed ocaml-env-mingw64.1
-> installed system-mingw.1
-> retrieved ocaml-config.3  (2 extra sources)
-> retrieved ocaml-config.3  (2 extra sources)
-> installed mingw-w64-shims.0.2.0
-> 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-09 02:22.36 ---> using "bde3e22405d3d4b8eb936b6a5924016abe757c72ef4284f806d0ffa633cf6608" from cache

C:/: (run (network host)
          (shell "opam update --depexts"))
2026-03-09 02:22.36 ---> using "52107e23401ba5a409505a63e9d96ae2fb84390238c362f7049829fa18c5671f" from cache

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

Nothing to do.
The following actions will be performed:
=== install 5 packages
  - install dune         3.21.1 [required by nanosvg_text]
  - install nanosvg      0.2    [required by nanosvg_text]
  - install nanosvg_text 0.1
  - install ocamlfind    1.9.8  [required by stb_truetype]
  - install stb_truetype 0.7    [required by nanosvg_text]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing  1/15: [dune.3.21.1: extract]
Processing  2/15: [dune.3.21.1: extract] [nanosvg.0.2: http]
Processing  3/15: [dune.3.21.1: extract] [nanosvg.0.2: http] [nanosvg_text.0.1: http]
Processing  3/15: [dune.3.21.1: extract] [nanosvg.0.2: extract] [nanosvg_text.0.1: http]
Processing  3/15: [dune.3.21.1: extract] [nanosvg.0.2: extract] [nanosvg_text.0.1: extract]
-> retrieved nanosvg.0.2  (https://github.com/Armael/ocaml-nanosvg/releases/download/0.2/nanosvg-0.2.tbz)
Processing  3/15: [dune.3.21.1: extract] [nanosvg_text.0.1: extract]
Processing  4/15: [dune.3.21.1: extract] [nanosvg_text.0.1: extract] [ocamlfind.1.9.8: extract]
-> retrieved nanosvg_text.0.1  (https://github.com/Armael/ocaml-nanosvg/releases/download/0.1/nanosvg-0.1.tbz)
Processing  4/15: [dune.3.21.1: extract] [ocamlfind.1.9.8: extract]
Processing  5/15: [dune.3.21.1: extract] [ocamlfind.1.9.8: extract] [stb_truetype.0.7: http]
-> retrieved ocamlfind.1.9.8  (cached)
Processing  5/15: [dune.3.21.1: extract] [stb_truetype.0.7: http]
Processing  6/15: [dune.3.21.1: extract] [stb_truetype.0.7: http] [ocamlfind: ./configure C:\opam\.opam\mingw-5.4\bin]
Processing  6/15: [dune.3.21.1: extract] [stb_truetype.0.7: extract] [ocamlfind: ./configure C:\opam\.opam\mingw-5.4\bin]
-> retrieved stb_truetype.0.7  (https://github.com/let-def/stb_truetype/archive/v0.7.tar.gz)
Processing  6/15: [dune.3.21.1: extract] [ocamlfind: ./configure C:\opam\.opam\mingw-5.4\bin]
+ C:\opam\.opam\mingw-5.4\.opam-switch\build\ocamlfind.1.9.8\./configure "-bindir" "C:\\opam\\.opam\\mingw-5.4\\bin" "-sitelib" "C:\\opam\\.opam\\mingw-5.4\\lib" "-mandir" "C:\\opam\\.opam\\mingw-5.4\\man" "-config" "C:\\opam\\.opam\\mingw-5.4\\lib/findlib.conf" "-no-custom" "-no-camlp4" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\ocamlfind.1.9.8)
- Welcome to findlib version 1.9.8
- Configuring core...
- Cygwin build environment found; using .exe as suffix for binaries
- Checking for #remove_directory...
- Testing threading model...
- systhread_supported: true
- Testing DLLs...
- Testing whether ppxopt can be supported...
- Checking for ocamlc -opaque...
- Checking for ocamlopt -g...
- Configuring libraries...
- unix: found (in +unix)
- dynlink: found (in +dynlink)
- bigarray: not present (possible since 4.08)
- compiler-libs: found
- dbm: not present (normal since 4.00)
- graphics: not present (normal since 4.09)
- num: not present (normal since 4.06)
- ocamlbuild: not present (normal since 4.03)
- ocamldoc: found (in +ocamldoc)
- raw_spacetime: not present (normal since 4.12)
- threads: found (in +threads)
- str: found (in +str)
- labltk: not present (normal since 4.02)
- native dynlink: found
- camlp4: disabled
- bytes: found, installing fake library
- Configuration for bytes written to site-lib-src/bytes/META
- Detecting compiler arguments: (extractor built) ok
- 
- About the OCAML core installation:
-     Standard library:      /cygdrive/c/opam/.opam/mingw-5.4/lib/ocaml
-     Binaries:              /cygdrive/c/opam/.opam/mingw-5.4/bin
-     Manual pages:          /usr/local/man
-     Multi-threading type:  posix
- The directory of site-specific packages will be
-     site-lib:              C:\opam\.opam\mingw-5.4\lib
- The configuration file is written to:
-     findlib config file:   C:\opam\.opam\mingw-5.4\lib/findlib.conf
- Software will be installed:
-     Libraries:             in <site-lib>/findlib
-     Binaries:              C:\opam\.opam\mingw-5.4\bin
-     Manual pages:          C:\opam\.opam\mingw-5.4\man
-     topfind script:        /cygdrive/c/opam/.opam/mingw-5.4/lib/ocaml
- Topfind ppxopt support:    yes
- Toolbox:                   no
- Link custom runtime:       no
- Need bytes compatibility:  no
- 
- Configuration has been written to Makefile.config
- 
- You can now do 'make all', and optionally 'make opt', to build ocamlfind.
Processing  6/15: [dune.3.21.1: extract] [ocamlfind: make all]
-> retrieved dune.3.21.1  (cached)
Processing  6/15: [ocamlfind: make all]
Processing  7/15: [dune: ocaml 15] [ocamlfind: make all]
+ C:\cygwin64\bin\make.exe "all" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\ocamlfind.1.9.8)
- for p in findlib; do ( cd src/$p; /usr/bin/make all ) || exit; done
- make[1]: Entering directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8/src/findlib'
- ocamllex fl_meta.mll
- 22 states, 392 transitions, table size 1700 bytes
- USE_CYGPATH="1"; \
- export USE_CYGPATH; \
- cat findlib_config.mlp | \
-          ../../tools/patch '@CONFIGFILE@' 'C:\opam\.opam\mingw-5.4\lib/findlib.conf' | \
-          ../../tools/patch '@STDLIB@' '/cygdrive/c/opam/.opam/mingw-5.4/lib/ocaml' | \
-          ../../tools/patch '@RELATIVE_PATHS@' 'false' | \
- 	sed -e 's;@AUTOLINK@;true;g' \
- 	    -e 's;@SYSTEM@;mingw64;g' \
- 	     >findlib_config.ml
- if [ "true" = "true" ]; then                 \
- 	cp topfind.ml.in topfind.ml;                             \
- else                                                             \
- 	sed -e '/PPXOPT_BEGIN/,/PPXOPT_END/ d' topfind.ml.in     \
- 		> topfind.ml ;                                   \
- fi
- ocamldep *.ml *.mli >depend
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c fl_compat.ml
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c fl_split.ml
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c findlib_config.ml
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c fl_metatoken.ml
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c fl_meta.ml
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -c fl_metascanner.mli
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c fl_metascanner.ml
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -c fl_topo.mli
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c fl_topo.ml
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -c fl_package_base.mli
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c fl_package_base.ml
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -c findlib.mli
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c findlib.ml
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c fl_args.ml
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c fl_lint.ml
- ocamlc -I +compiler-libs -a -o findlib.cma fl_compat.cmo fl_split.cmo findlib_config.cmo fl_metatoken.cmo fl_meta.cmo fl_metascanner.cmo fl_topo.cmo fl_package_base.cmo findlib.cmo fl_args.cmo fl_lint.cmo
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c ocaml_args.ml
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c frontend.ml
- ocamlc -I +compiler-libs  -o ocamlfind.exe -g findlib.cma unix.cma \
-            -I +unix -I +dynlink ocaml_args.cmo frontend.cmo
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -c topfind.mli
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c topfind.ml
- File "topfind.ml", line 128, characters 40-63:
- 128 |                      match Hashtbl.find Toploop.directive_table "ppx" with
-                                               ^^^^^^^^^^^^^^^^^^^^^^^
- Alert deprecated: Toploop.directive_table
- 
- File "topfind.ml", line 258, characters 4-27:
- 258 |     Toploop.directive_table
-           ^^^^^^^^^^^^^^^^^^^^^^^
- Alert deprecated: Toploop.directive_table
- 
- File "topfind.ml", line 268, characters 4-27:
- 268 |     Toploop.directive_table
-           ^^^^^^^^^^^^^^^^^^^^^^^
- Alert deprecated: Toploop.directive_table
- 
- File "topfind.ml", line 280, characters 4-27:
- 280 |     Toploop.directive_table
-           ^^^^^^^^^^^^^^^^^^^^^^^
- Alert deprecated: Toploop.directive_table
- 
- File "topfind.ml", line 293, characters 4-27:
- 293 |     Toploop.directive_table
-           ^^^^^^^^^^^^^^^^^^^^^^^
- Alert deprecated: Toploop.directive_table
- 
- File "topfind.ml", line 307, characters 4-27:
- 307 |     Toploop.directive_table
-           ^^^^^^^^^^^^^^^^^^^^^^^
- Alert deprecated: Toploop.directive_table
- 
- File "topfind.ml", line 319, characters 4-27:
- 319 |     Toploop.directive_table
-           ^^^^^^^^^^^^^^^^^^^^^^^
- Alert deprecated: Toploop.directive_table
- ocamlc -I +compiler-libs -a -o findlib_top.cma topfind.cmo
- if [ "1" = "1" ]; then                        \
- 	cp topfind.in topfind.compat.in;                                                     \
- else                                                                  \
- 	sed -e '/REMOVE_DIRECTORY_BEGIN/,/REMOVE_DIRECTORY_END/ d' topfind.in \
- 		> topfind.compat.in ;                                                \
- fi
- USE_CYGPATH="1"; \
- export USE_CYGPATH; \
- cat topfind.compat.in | \
-          ../../tools/patch '@SITELIB@' 'C:\opam\.opam\mingw-5.4\lib' | \
-          ../../tools/patch '@RELATIVE_PATHS@' 'false' \
-     	    >topfind
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -c fl_dynload.mli
- ocamlc -I +compiler-libs -opaque   -I +unix -I +dynlink -g -c fl_dynload.ml
- ocamlc -I +compiler-libs -a -o findlib_dynload.cma fl_dynload.cmo
- make[1]: Leaving directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8/src/findlib'
- /usr/bin/make all-config
- make[1]: Entering directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8'
- if [ "false" = "true" ]; then \
-   /usr/bin/make findlib-relative; \
-         else \
-   /usr/bin/make findlib-absolute; \
- fi
- make[2]: Entering directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8'
- USE_CYGPATH="1"; \
- export USE_CYGPATH; \
- cat findlib.conf.in | \
-      tools/patch '@SITELIB@' 'C:\opam\.opam\mingw-5.4\lib' | \
- 		 tools/patch '@FINDLIB_PATH@' '/cygdrive/c/opam/.opam/mingw-5.4/lib/ocaml:/cygdrive/c/opam/.opam/mingw-5.4/lib' -p >findlib.conf
- if ./tools/cmd_from_same_dir ocamlc; then \
- 	echo 'ocamlc="ocamlc.opt"' >>findlib.conf; \
- fi
- if ./tools/cmd_from_same_dir ocamlopt; then \
- 	echo 'ocamlopt="ocamlopt.opt"' >>findlib.conf; \
- fi
- if ./tools/cmd_from_same_dir ocamldep; then \
- 	echo 'ocamldep="ocamldep.opt"' >>findlib.conf; \
- fi
- if ./tools/cmd_from_same_dir ocamldoc; then \
- 	echo 'ocamldoc="ocamldoc.opt"' >>findlib.conf; \
- fi
- make[2]: Leaving directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8'
- make[1]: Leaving directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8'
Processing  7/15: [dune: ocaml 15] [ocamlfind: make opt]
+ C:\cygwin64\bin\make.exe "opt" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\ocamlfind.1.9.8)
- for p in findlib; do ( cd src/$p; /usr/bin/make opt ) || exit; done
- make[1]: Entering directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8/src/findlib'
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c fl_compat.ml
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c fl_split.ml
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c findlib_config.ml
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c fl_metatoken.ml
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c fl_meta.ml
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c fl_metascanner.ml
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c fl_topo.ml
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c fl_package_base.ml
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c findlib.ml
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c fl_args.ml
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c fl_lint.ml
- ocamlopt -I +compiler-libs -g -a -o findlib.cmxa fl_compat.cmx fl_split.cmx findlib_config.cmx fl_metatoken.cmx fl_meta.cmx fl_metascanner.cmx fl_topo.cmx fl_package_base.cmx findlib.cmx fl_args.cmx fl_lint.cmx
- if [ 1 -gt 0 ]; then \
-     ocamlopt -I +compiler-libs -g -shared -o findlib.cmxs fl_compat.cmx fl_split.cmx findlib_config.cmx fl_metatoken.cmx fl_meta.cmx fl_metascanner.cmx fl_topo.cmx fl_package_base.cmx findlib.cmx fl_args.cmx fl_lint.cmx; \
- fi
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c ocaml_args.ml
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c frontend.ml
- ocamlopt -I +compiler-libs -g -o ocamlfind_opt.exe findlib.cmxa unix.cmxa \
- 	   -I +unix -I +dynlink ocaml_args.cmx frontend.cmx
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c topfind.ml
- File "topfind.ml", line 128, characters 40-63:
- 128 |                      match Hashtbl.find Toploop.directive_table "ppx" with
-                                               ^^^^^^^^^^^^^^^^^^^^^^^
- Alert deprecated: Toploop.directive_table
- 
- File "topfind.ml", line 258, characters 4-27:
- 258 |     Toploop.directive_table
-           ^^^^^^^^^^^^^^^^^^^^^^^
- Alert deprecated: Toploop.directive_table
- 
- File "topfind.ml", line 268, characters 4-27:
- 268 |     Toploop.directive_table
-           ^^^^^^^^^^^^^^^^^^^^^^^
- Alert deprecated: Toploop.directive_table
- 
- File "topfind.ml", line 280, characters 4-27:
- 280 |     Toploop.directive_table
-           ^^^^^^^^^^^^^^^^^^^^^^^
- Alert deprecated: Toploop.directive_table
- 
- File "topfind.ml", line 293, characters 4-27:
- 293 |     Toploop.directive_table
-           ^^^^^^^^^^^^^^^^^^^^^^^
- Alert deprecated: Toploop.directive_table
- 
- File "topfind.ml", line 307, characters 4-27:
- 307 |     Toploop.directive_table
-           ^^^^^^^^^^^^^^^^^^^^^^^
- Alert deprecated: Toploop.directive_table
- 
- File "topfind.ml", line 319, characters 4-27:
- 319 |     Toploop.directive_table
-           ^^^^^^^^^^^^^^^^^^^^^^^
- Alert deprecated: Toploop.directive_table
- ocamlopt -I +compiler-libs -g -a -o findlib_top.cmxa topfind.cmx
- if [ 1 -gt 0 ]; then \
-     ocamlopt -I +compiler-libs -g -shared -o findlib_top.cmxs topfind.cmx; \
- fi
- ocamlopt -I +compiler-libs -g -opaque  -I +unix -I +dynlink -c fl_dynload.ml
- ocamlopt -I +compiler-libs -g -a -o findlib_dynload.cmxa fl_dynload.cmx
- if [ 1 -gt 0 ]; then \
-     ocamlopt -I +compiler-libs -g -shared -o findlib_dynload.cmxs fl_dynload.cmx; \
- fi
- make[1]: Leaving directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8/src/findlib'
-> compiled  ocamlfind.1.9.8
Processing  7/15: [dune: ocaml 15]
Processing  8/15: [dune: ocaml 15] [ocamlfind: make install]
+ C:\cygwin64\bin\make.exe "install" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\ocamlfind.1.9.8)
- if [ "0" -eq 1 ]; then \
-     for x in camlp4 dbm graphics labltk num ocamlbuild; do \
-       if [ -f "C:\opam\.opam\mingw-5.4\lib/$x/META" ]; then \
-         if ! grep -Fq '[distributed with Ocaml]' "/C:\opam\.opam\mingw-5.4\lib/$x/META"; then \
-           rm -f site-lib-src/$x/META; \
-         fi; \
-       fi; \
-     done; \
-     test -f "site-lib-src/num/META" || rm -f "site-lib-src/num-top/META"; \
-   fi
- echo 'SITELIB_META =' > Makefile.packages.in
- for x in `ls site-lib-src`; do test ! -f "site-lib-src/$x/META" || echo $x >> Makefile.packages.in; done
- tr '\n' ' ' < Makefile.packages.in > Makefile.packages
- rm Makefile.packages.in
- install -d "C:\opam\.opam\mingw-5.4\bin"
- install -d "C:\opam\.opam\mingw-5.4\man"
- /usr/bin/make install-config
- make[1]: Entering directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8'
- install -d "`dirname \"C:\opam\.opam\mingw-5.4\lib/findlib.conf\"`"
- test -f "C:\opam\.opam\mingw-5.4\lib/findlib.conf" || cp findlib.conf "C:\opam\.opam\mingw-5.4\lib/findlib.conf"
- make[1]: Leaving directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8'
- for p in findlib; do ( cd src/$p; /usr/bin/make install ); done
- make[1]: Entering directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8/src/findlib'
- install -d "C:\opam\.opam\mingw-5.4\lib/findlib"
- install -d "C:\opam\.opam\mingw-5.4\bin"
- test 1 -eq 0 || install -d "/cygdrive/c/opam/.opam/mingw-5.4/lib/ocaml"
- test 1 -eq 0 || cp topfind "/cygdrive/c/opam/.opam/mingw-5.4/lib/ocaml/"
- files=` ../../tools/collect_files ../../Makefile.config \
- findlib.cmi findlib.mli findlib.cma findlib.cmxa findlib.a findlib.cmxs \
- findlib_config.cmi findlib_config.ml topfind.cmi topfind.mli \
- fl_args.cmi fl_lint.cmi fl_meta.cmi fl_split.cmi fl_topo.cmi ocaml_args.cmi \
- fl_package_base.mli fl_package_base.cmi fl_metascanner.mli fl_metascanner.cmi \
- fl_metatoken.cmi findlib_top.cma findlib_top.cmxa findlib_top.a findlib_top.cmxs \
- findlib_dynload.cma findlib_dynload.cmxa findlib_dynload.a findlib_dynload.cmxs fl_dynload.mli fl_dynload.cmi \
- META` && \
- cp $files "C:\opam\.opam\mingw-5.4\lib/findlib/"
- f="ocamlfind.exe"; { test -f ocamlfind_opt.exe && f="ocamlfind_opt.exe"; }; \
- install -c $f "C:\opam\.opam\mingw-5.4\bin/ocamlfind.exe"
- # the following "if" block is only needed for 4.00beta2
- if [ 1 -eq 0 -a -f "/cygdrive/c/opam/.opam/mingw-5.4/lib/ocaml/compiler-libs/topdirs.cmi" ]; then \
-     cd "/cygdrive/c/opam/.opam/mingw-5.4/lib/ocaml/compiler-libs/"; \
-     cp topdirs.cmi toploop.cmi "C:\opam\.opam\mingw-5.4\lib/findlib/"; \
- fi
- make[1]: Leaving directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8/src/findlib'
- /usr/bin/make install-meta
- make[1]: Entering directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8'
- for x in bytes ; do install -d "C:\opam\.opam\mingw-5.4\lib/$x"; cp site-lib-src/$x/META "C:\opam\.opam\mingw-5.4\lib/$x/META.tmp" && mv "C:\opam\.opam\mingw-5.4\lib/$x/META.tmp" "C:\opam\.opam\mingw-5.4\lib/$x/META"; done
- install -d "C:\opam\.opam\mingw-5.4\lib/findlib"; cp Makefile.packages "C:\opam\.opam\mingw-5.4\lib/findlib/Makefile.packages"
- make[1]: Leaving directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8'
- test ! -f 'site-lib-src/num-top/META' || { cd src/findlib; /usr/bin/make install-num-top; }
- test ! -f 'site-lib-src/camlp4/META' ||	install -c tools/safe_camlp4 "C:\opam\.opam\mingw-5.4\bin"
- /usr/bin/make install-doc
- make[1]: Entering directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8'
- install -d "C:\opam\.opam\mingw-5.4\man/man1" "C:\opam\.opam\mingw-5.4\man/man3" "C:\opam\.opam\mingw-5.4\man/man5"
- cp doc/ref-man/ocamlfind.1 "C:\opam\.opam\mingw-5.4\man/man1"
- cp: cannot stat 'doc/ref-man/ocamlfind.1': No such file or directory
- make[1]: [Makefile:91: install-doc] Error 1 (ignored)
- cp doc/ref-man/META.5 doc/ref-man/site-lib.5 doc/ref-man/findlib.conf.5 "C:\opam\.opam\mingw-5.4\man/man5"
- cp: cannot stat 'doc/ref-man/META.5': No such file or directory
- cp: cannot stat 'doc/ref-man/site-lib.5': No such file or directory
- cp: cannot stat 'doc/ref-man/findlib.conf.5': No such file or directory
- make[1]: [Makefile:92: install-doc] Error 1 (ignored)
- make[1]: Leaving directory '/cygdrive/c/opam/.opam/mingw-5.4/.opam-switch/build/ocamlfind.1.9.8'
[WARNING] .install file is missing .exe extension for src/findlib/ocamlfind
[WARNING] .install file is missing .exe extension for src/findlib/ocamlfind_opt
[WARNING] Automatically adding .exe to C:\opam\.opam\mingw-5.4\.opam-switch\build\ocamlfind.1.9.8\src\findlib\ocamlfind.exe
[WARNING] Automatically adding .exe to C:\opam\.opam\mingw-5.4\.opam-switch\build\ocamlfind.1.9.8\src\findlib\ocamlfind_opt.exe
[WARNING] C:\opam\.opam\mingw-5.4\bin\safe_camlp4 is a script; the command won't be available
-> installed ocamlfind.1.9.8
Processing  8/15: [dune: ocaml 15]
Processing  9/15: [dune: ocaml 15] [stb_truetype: make]
+ C:\cygwin64\bin\make.exe (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\stb_truetype.0.7)
- ocamlc -c stb_truetype.mli
- ocamlc -c stb_truetype.ml
- ocamlc -c -ccopt "-O3 -ffast-math -Werror" ml_stb_truetype.c
- ml_stb_truetype.c: In function ‘ml_stbtt_GetGlyphBitmap’:
- ml_stb_truetype.c:694:67: error: passing argument 4 of ‘caml_ba_alloc’ from incompatible pointer type [-Werror=incompatible-pointer-types]
-   694 |   ba = caml_ba_alloc(CAML_BA_UINT8 | CAML_BA_C_LAYOUT, 1, bitmap, dims);
-       |                                                                   ^~~~
-       |                                                                   |
-       |                                                                   long int *
- In file included from ml_stb_truetype.c:9:
- C:/opam/.opam/mingw-5.4/lib/ocaml/caml/bigarray.h:101:66: note: expected ‘intnat *’ {aka ‘long long int *’} but argument is of type ‘long int *’
-   101 |     caml_ba_alloc(int flags, int num_dims, void * data, intnat * dim);
-       |                                                         ~~~~~~~~~^~~
- ml_stb_truetype.c: In function ‘ml_stbtt_GetGlyphBitmapSubpixel’:
- ml_stb_truetype.c:718:67: error: passing argument 4 of ‘caml_ba_alloc’ from incompatible pointer type [-Werror=incompatible-pointer-types]
-   718 |   ba = caml_ba_alloc(CAML_BA_UINT8 | CAML_BA_C_LAYOUT, 1, bitmap, dims);
-       |                                                                   ^~~~
-       |                                                                   |
-       |                                                                   long int *
- C:/opam/.opam/mingw-5.4/lib/ocaml/caml/bigarray.h:101:66: note: expected ‘intnat *’ {aka ‘long long int *’} but argument is of type ‘long int *’
-   101 |     caml_ba_alloc(int flags, int num_dims, void * data, intnat * dim);
-       |                                                         ~~~~~~~~~^~~
- cc1: all warnings being treated as errors
- make: *** [Makefile:14: ml_stb_truetype.o] Error 2
Processing  9/15: [dune: ocaml 15]
Processing 10/15: [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)
[ERROR] The compilation of stb_truetype.0.7 failed at "make".
- 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 10/15: [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 12/15: [nanosvg: dune build]
+ C:\opam\.opam\mingw-5.4\bin\dune.exe "build" "-p" "nanosvg" "-j" "15" "@install" (CWD=C:\opam\.opam\mingw-5.4\.opam-switch\build\nanosvg.0.2)
- (cd _build/default/lib && C:\cygwin64\bin\x86_64-w64-mingw32-gcc.exe -O2 -fno-strict-aliasing -fwrapv -mms-bitfields -O2 -fno-strict-aliasing -fwrapv -mms-bitfields -g -I C:/opam/.opam/mingw-5.4/lib/ocaml -o nanosvg_stubs.o -c nanosvg_stubs.c)
- nanosvg_stubs.c: In function ‘caml_nsvg_alloc_shape’:
- nanosvg_stubs.c:261:11: warning: assignment discards ‘volatile’ qualifier from pointer target type [-Wdiscarded-qualifiers]
-   261 |       cur = &Field(*cur, 1);
-       |           ^
- nanosvg_stubs.c: In function ‘caml_nsvg_alloc_image’:
- nanosvg_stubs.c:304:9: warning: assignment discards ‘volatile’ qualifier from pointer target type [-Wdiscarded-qualifiers]
-   304 |     cur = &Field(*cur, 1);
-       |         ^
-> compiled  nanosvg.0.2
-> installed nanosvg.0.2

#=== ERROR while compiling stb_truetype.0.7 ===================================#
# 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\stb_truetype.0.7
# command              C:\cygwin64\bin\make.exe
# exit-code            2
# env-file             C:\opam\.opam\log\stb_truetype-23268-5b24f3.env
# output-file          C:\opam\.opam\log\stb_truetype-23268-5b24f3.out
### output ###
# C:/opam/.opam/mingw-5.4/lib/ocaml/caml/bigarray.h:101:66: note: expected ‘intnat *’ {aka ‘long long int *’} but argument is of type ‘long int *’
# [...]
# ml_stb_truetype.c: In function ‘ml_stbtt_GetGlyphBitmapSubpixel’:
# ml_stb_truetype.c:718:67: error: passing argument 4 of ‘caml_ba_alloc’ from incompatible pointer type [-Werror=incompatible-pointer-types]
#   718 |   ba = caml_ba_alloc(CAML_BA_UINT8 | CAML_BA_C_LAYOUT, 1, bitmap, dims);
#       |                                                                   ^~~~
#       |                                                                   |
#       |                                                                   long int *
# C:/opam/.opam/mingw-5.4/lib/ocaml/caml/bigarray.h:101:66: note: expected ‘intnat *’ {aka ‘long long int *’} but argument is of type ‘long int *’
#   101 |     caml_ba_alloc(int flags, int num_dims, void * data, intnat * dim);
#       |                                                         ~~~~~~~~~^~~
# cc1: all warnings being treated as errors
# make: *** [Makefile:14: ml_stb_truetype.o] Error 2



<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
+- The following actions were aborted
| - install nanosvg_text 0.1
+- 
+- The following actions failed
| - build stb_truetype 0.7
+- 
+- The following changes have been performed (the rest was aborted)
| - install dune      3.21.1
| - install nanosvg   0.2
| - install ocamlfind 1.9.8
+- 
# 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-20260309022317.export"
'C:\cygwin64\usr\local\bin\opam.exe install -vy nanosvg_text.0.1' failed.
"C:\cygwin64\bin\bash.exe" "-lc" "opam remove -y nanosvg_text.0.1
opam install -vy nanosvg_text.0.1
res=$?
if [ $res = 31 ]; then
    if opam show -f x-ci-accept-failures: nanosvg_text.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