我正在开发RDP,拥有Ubuntu14.04,并试图安装ocaml。
我试图将我的ocaml编译器更新为4.05.0或更高版本,但是opam switch list只提供了一个编译器system C system System compiler (4.01.0)。我的opam update也给了我下面的日志。
[ERROR] Your version of OPAM (1.1.1) is not recent enough to read ~/.opam/repo/default/repo. Upgrade OPAM to a more recent version (at least 2.0) to read this file correctly.
[ERROR] Skipping https://opam.ocaml.org as the repository is not available.
Updating ~/.opam/repo/compiler-index ...
Updating ~/.opam/compilers/ ...
Updating ~/.opam/repo/package-index ...
Updating ~/.opam/packages/ ...
Updating the cache of metadata (~/.opam/state.cache) ...
Everything is up-to-date.知道怎么做吗?谢谢你提前帮忙。
更新:我需要使用二进制发行版分别安装较新的opam版本。有了这个
sh <(curl -sL https://raw.githubusercontent.com/ocaml/opam/master/shell/install.sh) 命令我可以安装它,但是它会提示我在哪里安装它,但是我必须自动化安装,这样用户端就没有交互了。有办法吗?
更新2:
找到一种用ppa做这件事的方法--见我的答案。
发布于 2019-02-06 08:15:24
我试过使用sh <(curl -sL https://raw.githubusercontent.com/ocaml/opam/master/shell/install.sh),但未能将其作为非交互式脚本使用。
我已经发现这个方法是可行的,虽然使用Ubuntu14.04添加了ppa sudo add-apt-repository ppa:avsm/ppa,然后执行更新、升级、dist升级和最后安装opam将是2.2版(最新版本为ppa)。按照下面的命令进行精确的过程。
add-apt-repository ppa:avsm/ppa
apt-get update -y
apt-get upgrade -y
apt-get dist-upgrade -y
apt-get install curl build-essential m4 zlib1g-dev libssl-dev ocaml ocaml-native-compilers opam -y
opam init --disable-sandboxing -y
eval `opam config env`
opam update
opam switch list-available
opam switch create 4.07.0
opam init -y
eval `opam config env`从现在起,一切都应该是最新的。
发布于 2019-02-05 14:00:15
嗯,就像日志上说的,你必须更新你的OPAM到2.x。旧版本不再受支持。因此,您必须遵循安装说明并更新您的OCaml。
https://stackoverflow.com/questions/54534815
复制相似问题