Windows系统 Emacs运行SML REPL控制台报错 "Searching for program: no such file or directory, sml"
首先保证在smlnj官网,下载并安装了SMLNJ,然后再检查Emacs是否安装sml-mode(需要注意的是Emacs的sml-mode只是一种Emacs的编辑模式,并不包含SML的编译器之类的东西)
M-x list-packages
查看sml-mode,如图sml-mode显示已安装
新建SML文件,C-c C-s
命令输入 sml 之后却报错"Searching for program: no such file or directory, sml"
网上比较多的解决方案是针对Linux或Mac的,主要是说没有将SML的bin目录添加到环境变量,说的很有道理,但是具体操作不太相同
由于我使用的是win10系统,在环境变量中检查完发现压根没有SML的东西,那就没错了,就是SMLNJ的环境变量出了问题。
将SMLNJ文件下的bin目录添加到path即可,该目录根据安装位置而定,一般在
C:\Program Files(x86)\SMLNJ
如果找不到这样的文件夹,有可能是SMLNJ安装有问题,可以重新安装或者直接复制别人安装好的文件夹。
如图,添加至环境变量,重启Emacs,再使用C-c C-s
命令输入 sml ,就能进入SML REPL命令行了