我正在使用.sml
编译一些mosmlc.exe
个文件。问题是.ui
和.uo
输出文件放在我的输入.sml
文件的同一目录中。我想做这样的事情:
mosmlc.exe -o out/ src/file1.sml src/file2.sml
这样输出文件将在out/
文件夹中创建。但看起来-o
选项用于不同的东西(根据documentation)。但是,如果我使用这样的选项运行,输出文件无论如何都会在与输入文件相同的目录中创建。
如何指定输出文件夹?没有关于此的文档,编译器没有列出编译器选项的帮助选项(非常烦人)。
通过检查编译器entry point's source code,我可以理解:
所以,看起来我无法做到这一点......你能证实吗?
答案 0 :(得分:3)
我认为没有任何解决方案。也许只是使用符号链接的解决方法,我不确定Windows提供:
mkdir out && \
cd out && \
ln -s ../*.{sml,sig} . && \
mosmlc -toplevel Hello.sml World.sml main.sml -o main && \
./main
这会在其中创建一个out
目录cd
,将所有.sig
或.sml
源文件符号链接到该目录中并在那里执行编译。
很抱歉,我给了你一个Unix命令,但是我没有要测试的Windows机器。