ubuntu - 使用 Ubuntu 在 wsl 上配置 GHC 7.6.3 版安装时出错:加载共享库时出错:libgmp.so.3:
问题描述
我正在开展一个研究项目,该项目需要使用在旧版 Haskell 和 GHC(特别是 7.6.3)之上运行的软件。我已经设法下载了源代码,但是每当我运行配置脚本(带有任何选项)时,都会出现以下错误:
checking for path to top of build tree... utils/ghc-pwd/dist-install/build/tmp/ghc-pwd: error while loading shared libraries: libgmp.so.3: cannot open shared object file: No such file or directory configure: error: cannot determine current directory
到目前为止,我已经尝试安装任何版本的 libgmp 足够老,它会有一个具有该名称的文件,但我无法找到仍然可用的任何类似的东西。
我还尝试直接从https://launchpad.net/~hvr/+archive/ubuntu/ghc/+packages下载 GHC 7.6.3 的二进制文件(从 GHC 官方网站链接),但是我不熟悉启动板,无法弄清楚如何使用 PPA。
有没有人有一种万无一失的方法来在任何版本的 ubuntu for WSL 上安装旧版本的 GHC?
解决方案
我能够弄清楚如何使用官方 GHC PPA:
PPA 中的每个 GHC 构建都有一些关联的 .deb 文件,因此当您找到所需的并且具有正确架构的文件时,只需复制链接地址并使用 wget 或 curl 下载文件
wget --no-check-certificate https://launchpad.net/~hvr/+archive/ubuntu/ghc-staging/+build/16234874/+files/ghc-7.6.3_7.6.3-15~14.04_amd64.deb
curl -kOL https://launchpad.net/~hvr/+archive/ubuntu/ghc-staging/+build/16234874/+files/ghc-7.6.3_7.6.3-15~14.04_amd64.deb
然后你可以使用任何你喜欢的方法来安装 .deb 文件。这里描述了几种不同的方法
最后,您需要将二进制文件添加到路径中,因此将以下行添加到您的 .bashrc 文件中
export PATH="/opt/ghc/bin:$PATH"
希望对将来的任何人有所帮助!
推荐阅读
- reactjs - 不工作 2 DateRangePicker (react-dates) 在 1 页
- git - Stencil.js 在一个 Vue.js 项目中链接并需要或导入多个 Stencil 项目?
- mysql - 当列在两个表中有条件时删除行
- r - 所有组合/按组交叉
- ignite - 用于 KV 存储的 Zeppelin 替代方案
- python - 用布尔值 True 替换数字
- sql - Google Analytics BigQuery 按用户获取两个不同页面之间的时间差
- angular - 如何使用以下 HTTP 请求从服务器获取数据
- node.js - Wolkenkit 无法以“错误:无法获得最低处理位置”开始。
- python - 尝试从日期时间中减去天数并将其转换为字符串