如何像处理stack install --flag asd:qwe
那样将标志传递给stack run
发布于 2019-05-28 02:29:01
我找不到这样做的方法,所以这里是我建议的解决方法:
使用stack build
构建应用程序并直接运行程序,而不是使用stack run ...
。
因此,与其使用
# The Problem: This doesn't work because run doesn't recognize --flag
> stack run --flag asd:qwe
使用以下两步方法:
stack build --flag asd:qwe
./path/to/your/executable/<your executable>
如果您使用的是stack install
而不是stack build
,stack会将编译后的二进制文件放在local-bin
目录.?The documentation suggests that you add this directory to your $PATH variable中,这意味着您可以直接调用<your-executable>
。
此响应的其余部分假定您使用的是stack build
。
在我的系统(Arch linux,5月19日,堆栈1.9.3.1)上,堆栈将编译后的二进制文件放入local-install-root
的bin
-folder中(使用stack path --local-install-root
显示)。
可执行文件的完整路径应为<local-install-root>/bin/<executable-name>
»根据The User guide的说法,人们经常对stack install
的含义感到困惑。它是stack build --copy-bins
的别名,它只是在构建之后将二进制文件复制到local-bin-path
,因此如果您的$PATH包含local-bin-path
,则通常可以使用它
https://stackoverflow.com/questions/54380210
复制相似问题