Early Technical Limitations¶
On first install for Windows running the
./dk DkRun_V2_2.Run -- DkHelloScript_Std.Y33Article --serve
example can give:[00:00:22.564] [SUCCESS] (3/18) reproducibility or quick typing [00:00:22.564] Starting test: focus on what you run [00:00:22.566] [.\dk.cmd#3] '.\dk.cmd' DkRun_V2_1.Run '--generator=dune' -- DkHelloScript_Std.AndHelloAgain [ERROR][2024-04-29T00:00:43Z] /Run/ Failed to run C:\Users\WDAGUtilityAccount\DkHelloScript\src\DkHelloScript_Std\Y33Article.ml (DkHelloScript_Std.Y33Article). Code fa10b83d. Problem: The DkHelloScript_Std.Y33Article script exited with STATUS_ACCESS_VIOLATION (0xC0000005) - The instruction at 0x%08lx referenced memory at 0x%08lx. The memory could not be %s. Solution: Scroll up to see why.
If you rerun it, it succeeds.
The
./dk
script delegates to the build toolCMake
first, and then toOCaml
. That design reflects the history that DkCoder was designed first for C packages. The current design means:./dk
has the performance overhead of spawning CMake on startup.Ctrl-C does not cleanly kill all of the subprocesses on Windows. You may need to run
taskkill /f /im ocamlrunx.exe
to kill those hung processes.
./dk
has command line arguments interpreted by CMake before being interpreted by your script. In particular, nested double-quotes like./dk ... "here is a nested
" double quote"` in PowerShell won't work.
The GUI code was very recently ported to Windows. It has not had memory auditing so segfaults may occur. And playing sounds is known to hang. Do not use for GUIs and music for production code until we message that this has been fixed.