haskell - Haskell“堆栈”如何与 Windows 上的“msys2”交互?
问题描述
我正在开发一个在 Windows 下运行的 Haskell 程序。它使用了一些国外的mingw库。我有一个全局安装C:\msys64
,我可以使用 plain 进行管理pacman
。但是我想确保我在安装文件中打包的 DLL 与 GHC 链接的 DLL 相同。
Stack 文档中的这个页面说,在 Windows Stack 上安装了msys2,您可以通过执行以下操作来管理此安装:
stack exec -- pacman -S mingw64/mingw-w64-x86_64-icu
查看我的AppData\Local\Programs\stack
文件夹,我可以看到各种 GHC 安装,每个都有自己的mingw
文件夹。还有一个msys2-20180531
文件夹似乎对我的 Stack 安装来说是全局的:它位于 GHC 安装的旁边,而不是在里面。在运行stack exec
上面的行之后,我能够在后面的 msys2 安装中找到 ICU 库。我的C:\msys64
安装中也有相同库的副本,其中还包含我的程序使用的其他外部库。
当我运行时,GHC 将获取 ICU 库的哪个副本stack install
?它会先搜索 Stack 安装,然后再C:\msys64
安装吗?
解决方案
推荐阅读
- excel - 如何从 url 下载图像并使用 VBA 调整大小?
- node.js - 将 async/await 与 util.promisify(fs.readFile) 一起使用?
- azure-devops - PAT 令牌不适用于 2019 OnPrem Azure DevOps
- java - Minecraft Coder Pack 崩溃并显示 javaw 参数
- ios - 如何比较两个不同 UIPickerView 的值?
- sql-server - 无法弄清楚如何组合数组以便能够写入 powershell 中的 SQL 列
- asp.net - 使用 ffmpeg 将音频 blob 作为 mp3 文件保存到后端或 Azure
- reactjs - 传单:在 react.js 应用程序中动态更新多边形
- r - R中的gather()函数
- c# - ASP Core,XML 反序列化,忽略 DTD DOCTYPE 标签(WorldPay 通知)