Open
Description
I faced such problem right after installing OCaml on native Windows: related to dune in the default switch. The problem went away after reinstalling dune.
It is easier to reproduce by trying to install conf-python-3
since the installation fails more straightforwardly.
The problem appears both with and without Windows-wide python3 installed. In the logs below, I have Python 3.13 installed under the command python3
(or python3.exe
).
PS C:\Users\lukst\GitHub\ocannl> opam install conf-python-3 -vvv --debug-level=3
00:00.019 FILE(config) Read ~\AppData\Local\opam\config in 0.000s
00:00.019 CLI Parsing CLI version 2.3
00:00.020 GSTATE LOAD-GLOBAL-STATE @ C:\Users\lukst\AppData\Local\opam
00:00.020 SYSTEM LOCK C:\Users\lukst\AppData\Local\opam\lock (none => read)
00:00.021 FILE(config) Read ~\AppData\Local\opam\config in 0.000s
00:00.021 RSTATE LOAD-REPOSITORY-STATE @ C:\Users\lukst\AppData\Local\opam
00:00.022 FILE(repos-config) Read ~\AppData\Local\opam\repo\repos-config in 0.001s
00:00.022 SYSTEM LOCK C:\Users\lukst\AppData\Local\opam\repo\state-33BF9E46.cache (none => read)
00:00.068 CACHE(repository) Loaded C:\Users\lukst\AppData\Local\opam\repo\state-33BF9E46.cache in 0.045s
00:00.068 SYSTEM LOCK C:\Users\lukst\AppData\Local\opam\repo\state-33BF9E46.cache (read => none)
00:00.068 RSTATE Cache found
00:00.068 STATE LOAD-SWITCH-STATE @ 5.3.0
00:00.069 SYSTEM LOCK C:\Users\lukst\AppData\Local\opam\5.3.0\.opam-switch\lock (none => write)
00:00.069 FILE(switch-config) Read ~\AppData\Local\opam\5.3.0\.opam-switch\switch-config in 0.000s
00:00.069 FILE(switch-state) Read ~\AppData\Local\opam\5.3.0\.opam-switch\switch-state in 0.000s
00:00.071 FILE(opam) Read ~\AppData\Local\opam\5.3.0\.opam-switch\overlay\ppx_minidebug\opam in 0.000s
00:00.072 SYSTEM LOCK C:\Users\lukst\AppData\Local\opam\5.3.0\.opam-switch\packages\cache (none => read)
00:00.072 CACHE(installed) Loaded C:\Users\lukst\AppData\Local\opam\5.3.0\.opam-switch\packages\cache in 0.001s
00:00.072 SYSTEM LOCK C:\Users\lukst\AppData\Local\opam\5.3.0\.opam-switch\packages\cache (read => none)
00:00.240 FILE(.config) Read ~\AppData\Local\opam\5.3.0\.opam-switch\config\ocaml.config in 0.000s
00:00.241 FILE(.config) Read ~\AppData\Local\opam\5.3.0\.opam-switch\config\mingw-w64-shims.config in 0.000s
00:00.242 STATE Switch state loaded in 0.174s
00:00.246 FILE(switch-state) Wrote C:\Users\lukst\AppData\Local\opam\5.3.0\.opam-switch\backup\state-20250223152337.export atomically in 0.004s
00:00.298 CLIENT INSTALL conf-python-3
00:00.474 FILE(environment) Read ~\AppData\Local\opam\.last-env\env-7dfcb3d2f1f63a3e5a6a3e7b26326fa5-0 in 0.000s
00:00.609 PROC gen_quote: "C:\\Users\\lukst\\AppData\\Local\\opam\\.cygwin\\root\\bin\\cygpath.exe"
00:00.609 PROC result: "C:\\Users\\lukst\\AppData\\Local\\opam\\.cygwin\\root\\bin\\cygpath.exe"
00:00.609 PROC gen_quote: "--"
00:00.609 PROC result: "--"
00:00.609 PROC gen_quote: "C:\\Users\\lukst\\AppData\\Local\\opam\\5.3.0\\man"
00:00.610 PROC result: "C:\\Users\\lukst\\AppData\\Local\\opam\\5.3.0\\man"
00:00.610 PROC cygvoke(glob): "C:\Users\lukst\AppData\Local\opam\.cygwin\root\bin\cygpath.exe" "--" "C:\Users\lukst\AppData\Local\opam\5.3.0\man"
00:00.610 PROC Adding CYGWIN=winsymlinks:native
00:00.651 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-a57c47.info
00:00.652 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-a57c47.env
00:00.652 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-a57c47.out
00:00.655 GSTATE Failed to evaluate global variable sys-ocaml-version: "ocamlc": command not found.
+ C:\windows\system32\cmd.exe "/d" "/c" "for /f %f in ('ocamlc -config-var os_type 2^>nul') do @if '%f' equ 'Win32' (echo msvc) else (echo libc)"
00:00.721 SYSTEM [log-8956-4b3b67] (in 0.064s) cmd /d /c for /f %f in ('ocamlc -config-var os_type 2^>nul') do @if '%f' equ 'Win32' (echo msvc) else (echo libc)
00:00.721 GSTATE Failed to evaluate global variable sys-ocaml-libc: "C:\\windows\\system32\\cmd.exe /d /c for /f %f in ('ocamlc -config-var os_type 2^>nul') do @if '%f' equ 'Win32' (echo msvc) else (echo libc)" exited with code 1
00:00.844 XSYS Adding to env { LC_ALL=C }
00:01.011 STATE depexts loaded in 0.168s
00:01.016 STATE Availability of packages computed in 0.718s.
00:01.017 STATE Detected changed packages (marked for reinstall): {}
00:01.017 FILE(package-version-list) Cannot find C:\Users\lukst\AppData\Local\opam\5.3.0\.opam-switch\reinstall
+ C:\windows\system32\cmd.exe "/d" "/c" "for /f %f in ('ocamlc -config-var architecture 2^>nul') do @if '%f' equ 'i386' (echo i686) else if '%f' equ 'amd64' (echo x86_64) else (echo %f)"
00:01.134 SYSTEM [log-8956-27d600] (in 0.025s) cmd /d /c for /f %f in ('ocamlc -config-var architecture 2^>nul') do @if '%f' equ 'i386' (echo i686) else if '%f' equ 'amd64' (echo x86_64) else (echo %f)
00:01.134 GSTATE Failed to evaluate global variable sys-ocaml-arch: "C:\\windows\\system32\\cmd.exe /d /c for /f %f in ('ocamlc -config-var architecture 2^>nul') do @if '%f' equ 'i386' (echo i686) else if '%f' equ 'amd64' (echo x86_64) else (echo %f)" exited with code 1
+ C:\windows\system32\cmd.exe "/d" "/c" "ocamlc -config-var ccomp_type 2>nul"
00:01.150 SYSTEM [log-8956-3c9560] (in 0.016s) cmd /d /c ocamlc -config-var ccomp_type 2>nul
00:01.151 GSTATE Failed to evaluate global variable sys-ocaml-cc: "C:\\windows\\system32\\cmd.exe /d /c ocamlc -config-var ccomp_type 2>nul" exited with code 1
00:01.261 STATE Universe load: 0.220s
00:01.261 SOLVER resolve request=install:conf-python-3 remove:() upgrade:()
00:01.261 SOLVER cudf_versions_map
00:01.447 SOLVER Load cudf universe: opam2cudf
00:01.832 SOLVER Preload of cudf universe: done in 0.385s
00:01.832 SOLVER Load cudf universe (depopts:false, build:true, post:true)
00:01.833 SOLVER Load cudf universe (depopts:false, build:true, post:true)
00:01.912 SOLVER opam2cudf: done in 0.079s
00:01.929 SOLVER Secondary load of cudf universe: done in 0.096s
00:01.929 CUDF resolve request=install:conf-python-3 remove:() upgrade:()
00:01.929 CUDF Checking request...
00:02.828 CUDF Request checked in 0.899s
00:02.998 CUDF Conflicts: 303 (303) pkgs to remove
00:02.998 CUDF Preprocess cudf request (trimming: full): from 21384 to 2150 packages in 0.17s
00:02.998 SOLVER Calling solver builtin-mccs+glpk with criteria -removed,-count[avoid-version,changed],-count[version-lag,request],-count[version-lag,changed],-count[missing-depexts,changed],-changed
Can reduce graph.
Initial size: 2150 packages (142 installed, 2008 uninstalled), 240 virtual packages
Final size: 2147 packages (142 installed, 2005 uninstalled), 202 virtual packages
Constructing initial basis...
Number of 0-1 knapsack inequalities = 4102
Constructing conflict graph...
Conflict graph has 1316 + 604 = 1920 vertices
00:03.201 SOLVER External solver took 0.202s
00:03.201 CUDF Solver call done in 0.373s
00:03.202 SOLVER Load cudf universe (depopts:true, build:false, post:false)
00:03.203 SOLVER Load cudf universe (depopts:true, build:false, post:false)
00:03.264 SOLVER opam2cudf: done in 0.061s
00:03.276 SOLVER Secondary load of cudf universe: done in 0.073s
00:03.276 SOLVER Load cudf universe (depopts:true, build:true, post:false)
00:03.276 SOLVER Load cudf universe (depopts:true, build:true, post:false)
00:03.339 SOLVER opam2cudf: done in 0.063s
00:03.349 SOLVER Secondary load of cudf universe: done in 0.073s
00:03.349 CUDF graph_of_actions root_actions={ - ∗ conf-python-3 (= 2) }
00:03.355 CUDF Graph generation: 0.001
00:03.357 CUDF Graph generation: 0.000
00:03.361 CUDF Graph generation: 0.000
00:03.368 CUDF Removed unrelated actions: {}
00:03.368 SOLUTION apply
The following actions will be performed:
=== install 1 package
∗ conf-python-3 9.0.0
00:03.372 PROC gen_quote: "C:\\Users\\lukst\\AppData\\Local\\opam\\.cygwin\\root\\bin\\cygpath.exe"
00:03.372 PROC result: "C:\\Users\\lukst\\AppData\\Local\\opam\\.cygwin\\root\\bin\\cygpath.exe"
00:03.372 PROC gen_quote: "--"
00:03.372 PROC result: "--"
00:03.372 PROC gen_quote: "C:\\Users\\lukst\\AppData\\Local\\opam\\5.3.0\\man"
00:03.372 PROC result: "C:\\Users\\lukst\\AppData\\Local\\opam\\5.3.0\\man"
00:03.372 PROC cygvoke(glob): "C:\Users\lukst\AppData\Local\opam\.cygwin\root\bin\cygpath.exe" "--" "C:\Users\lukst\AppData\Local\opam\5.3.0\man"
00:03.372 PROC Adding CYGWIN=winsymlinks:native
00:03.394 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-a89170.info
00:03.394 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-a89170.env
00:03.394 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-a89170.out
00:03.397 PROC gen_quote: "C:\\Users\\lukst\\AppData\\Local\\opam\\.cygwin\\root\\bin\\cygpath.exe"
00:03.399 PROC result: "C:\\Users\\lukst\\AppData\\Local\\opam\\.cygwin\\root\\bin\\cygpath.exe"
00:03.399 PROC gen_quote: "--"
00:03.399 PROC result: "--"
00:03.400 PROC gen_quote: "C:\\Users\\lukst\\AppData\\Local\\opam\\5.3.0\\man"
00:03.400 PROC result: "C:\\Users\\lukst\\AppData\\Local\\opam\\5.3.0\\man"
00:03.400 PROC cygvoke(glob): "C:\Users\lukst\AppData\Local\opam\.cygwin\root\bin\cygpath.exe" "--" "C:\Users\lukst\AppData\Local\opam\5.3.0\man"
00:03.401 PROC Adding CYGWIN=winsymlinks:native
00:03.422 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-66c1ae.info
00:03.422 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-66c1ae.env
00:03.423 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-66c1ae.out
00:03.423 SOLUTION parallel_apply
00:03.423 SOLUTION Regroup shared source packages: {}
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><> 🐫
00:03.423 PARALLEL Iterate over 3 task(s) with 23 process(es)
00:03.424 PARALLEL Starting job 976010819 (worker -/23 -/1 1/3): ⬇ conf-python-3.9.0.0
00:03.424 SOLUTION Fetching sources for conf-python-3.9.0.0
00:03.424 ACTION download_package: conf-python-3.9.0.0
⬇ retrieved conf-python-3.9.0.0 (cached)
00:03.425 PARALLEL Job 976010819 finished
00:03.427 PARALLEL Starting job 419973939 (worker 1/23 -/1 -/3): λ conf-python-3.9.0.0
00:03.428 SYSTEM rmdir C:\Users\lukst\AppData\Local\opam\5.3.0\.opam-switch\build\conf-python-3.9.0.0
00:03.429 SYSTEM mkdir C:\Users\lukst\AppData\Local\opam\5.3.0\.opam-switch\build\conf-python-3.9.0.0
00:03.430 ACTION prepare_package_source: conf-python-3.9.0.0 at C:\Users\lukst\AppData\Local\opam\5.3.0\.opam-switch\build\conf-python-3.9.0.0
00:03.430 SYSTEM copy C:\Users\lukst\AppData\Local\opam\download-cache\sha256\50\50738b59f747bf6464ec69a083c7f21e768f0a77df6520a091636c74bb1b7b77 -> C:\Users\lukst\AppData\Local\opam\5.3.0\.opam-switch\build\conf-python-3.9.0.0\test.py
00:03.433 PROC gen_quote: "C:\\Users\\lukst\\AppData\\Local\\opam\\.cygwin\\root\\bin\\cygpath.exe"
00:03.433 PROC result: "C:\\Users\\lukst\\AppData\\Local\\opam\\.cygwin\\root\\bin\\cygpath.exe"
00:03.433 PROC gen_quote: "--"
00:03.433 PROC result: "--"
00:03.433 PROC gen_quote: "C:\\Users\\lukst\\AppData\\Local\\opam\\5.3.0\\man"
00:03.433 PROC result: "C:\\Users\\lukst\\AppData\\Local\\opam\\5.3.0\\man"
00:03.433 PROC cygvoke(glob): "C:\Users\lukst\AppData\Local\opam\.cygwin\root\bin\cygpath.exe" "--" "C:\Users\lukst\AppData\Local\opam\5.3.0\man"
00:03.434 PROC Adding CYGWIN=winsymlinks:native
00:03.454 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-4708d2.info
00:03.454 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-4708d2.env
00:03.454 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-4708d2.out
00:03.456 PROC gen_quote: "C:\\Users\\lukst\\AppData\\Local\\opam\\.cygwin\\root\\bin\\cygpath.exe"
00:03.456 PROC result: "C:\\Users\\lukst\\AppData\\Local\\opam\\.cygwin\\root\\bin\\cygpath.exe"
00:03.456 PROC gen_quote: "--"
00:03.457 PROC result: "--"
00:03.457 PROC gen_quote: "C:\\Users\\lukst\\AppData\\Local\\opam\\5.3.0\\man"
00:03.457 PROC result: "C:\\Users\\lukst\\AppData\\Local\\opam\\5.3.0\\man"
00:03.457 PROC cygvoke(glob): "C:\Users\lukst\AppData\Local\opam\.cygwin\root\bin\cygpath.exe" "--" "C:\Users\lukst\AppData\Local\opam\5.3.0\man"
00:03.457 PROC Adding CYGWIN=winsymlinks:native
00:03.478 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-4dc9d6.info
00:03.478 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-4dc9d6.env
00:03.479 PROC safe_unlink: C:\Users\lukst\AppData\Local\opam\log\command-8956-4dc9d6.out
00:03.480 PARALLEL Next task in job 419973939: C:\Users\lukst\AppData\Local\Microsoft\WindowsApps\python3.exe test.py
[ERROR] Actions cancelled because of Sys_error("C:\\Users\\lukst\\AppData\\Local\\Microsoft\\WindowsApps\\python3.exe: Invalid argument")
00:03.481 SYSTEM LOCK C:\Users\lukst\AppData\Local\opam\5.3.0\.opam-switch\lock (write => none)
00:03.484 FILE(switch-state) Read ~\AppData\Local\opam\5.3.0\.opam-switch\switch-state in 0.002s
00:03.484 SYSTEM rm C:\Users\lukst\AppData\Local\opam\5.3.0\.opam-switch\backup\state-20250223152337.export
00:03.484 SYSTEM LOCK C:\Users\lukst\AppData\Local\opam\repo\lock (none => none)
00:03.484 SYSTEM LOCK C:\Users\lukst\AppData\Local\opam\config.lock (none => none)
'C:\Users\lukst\AppData\Local\Microsoft\WinGet\Packages\OCaml.opam_Microsoft.Winget.Source_8wekyb3d8bbwe\opam.exe install conf-python-3 -vvv --debug-level=3' failed.
Fatal error:
Sys_error("C:\\Users\\lukst\\AppData\\Local\\Microsoft\\WindowsApps\\python3.exe: Invalid argument")