![](/img/trans.png)
[英]Haskell Stack `exec` executable not found despite path being searched
[英]Haskell standalone executable without using 'stack exec'
如何从stack
生成的框架( stack new myprog simple
)创建可执行文件?
myprog.cabal
myprog
显示为可执行文件,可以使用stack exec myprog
执行。
但是:使用./myprog
将不起作用。 除非我调用ghc --make src/Main.hs
。 这很明显并且很好地嵌入了模块,但现在可执行文件被称为Main
。
有没有办法让stack
编译myprog
作为一个完整的可执行文件,假设设置了环境路径,它可以从任何地方调用?
您可能已经知道, stack build
会构建可执行文件,然后将其放置在特定于stack
路径中,使用stack exec
最容易访问该路径。 但是,还有另一个命令: stack install
,然后将可执行文件复制到一个方便的位置。 通常默认位置在~/.local/bin
(我认为),但您可以使用stack install --local-bin-path <PATH>
将可执行文件复制到<PATH>
。 例如,使用stack install --local-bin-path .
将可执行文件放置在您当前的工作目录中,或使用stack install --local-bin-path bin
将其放置在您的./bin/
目录中。 然后,您可以使用<PATH>/my-exe
运行可执行文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.