Version
110.99.2
Operating System
OS Version
other x64 Windows 11
Processor
Other
Component
Core system
Severity
Minor
Description of the problem
ml-build fails with the error that it cannot find XYZ_XXX_BOOTLIST. I think it might be because of either the space or the parenthesis in the default install path.
Steps to repro:
- Download installer from https://smlnj.org/dist/working/110.99.2/smlnj-110.99.2.msi
- Install SMLNJ to the default location: C:\Program Files (x86)\SMLNJ.
- Create a file sources.cm and add the content below.
- Create a file main.sml and add the content below.
- Open cmd.exe or powershell and run
ml-build sources.cm Main.main out.
Fix:
I think you can double quote around the %COMSPEC% command like so in ml-build.bat:
%COMSPEC% /C ""%SMLNJ_HOME%\bin\sml.bat" %flags% %setup% @cmbuild %root% %cmfile% %heap% %listfile% %linkargsfile%"
Transcript
C:\source\repos\smlnj-windows-build-repro>ml-build sources.cm Main.main out
'C:\Program' is not recognized as an internal or external command,
operable program or batch file.
Compilation failed with error.
Could Not Find C:\source\repos\smlnj-windows-build-repro\XYZ_XXX_BOOTLIST
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
Expected Behavior
No response
Steps to Reproduce
sources.cm:
Group is
$/basis.cm
main.sml
main.sml:
structure Main =
struct
fun main (name, args) =
(print "Hello World!\n"; OS.Process.success)
end
Additional Information
No response
Email address
harrygifford92@gmail.com
Comments from smlnj-gforge
Original smlnj-gforge bug number 301
Submitted via web form by Harry Gifford harrygifford92@gmail.com on 2022-01-27 at 02:18:00
Keywords: Windows, ml-build
comment by Shakil Ahmed on 2022-02-08 00:16:00 +000 UTC
I reproduced the error and then edited the %COMSPEC% command in ml-build file as mentioned.
Then build was successful.
Version
110.99.2
Operating System
OS Version
other x64 Windows 11
Processor
Other
Component
Core system
Severity
Minor
Description of the problem
ml-build fails with the error that it cannot find XYZ_XXX_BOOTLIST. I think it might be because of either the space or the parenthesis in the default install path.
Steps to repro:
ml-build sources.cm Main.main out.Fix:
I think you can double quote around the %COMSPEC% command like so in ml-build.bat:
%COMSPEC% /C ""%SMLNJ_HOME%\bin\sml.bat" %flags% %setup% @cmbuild %root% %cmfile% %heap% %listfile% %linkargsfile%"
Transcript
Expected Behavior
No response
Steps to Reproduce
sources.cm:
main.sml:
Additional Information
No response
Email address
harrygifford92@gmail.com
Comments from smlnj-gforge
Original smlnj-gforge bug number 301
Submitted via web form by Harry Gifford harrygifford92@gmail.com on 2022-01-27 at 02:18:00
Keywords: Windows, ml-build
comment by Shakil Ahmed on 2022-02-08 00:16:00 +000 UTC
I reproduced the error and then edited the
%COMSPEC%command in ml-build file as mentioned.Then build was successful.