Проблемы с использованием opam и ocaml - PullRequest
0 голосов
/ 05 февраля 2019

Я работаю на RDP с Ubuntu 14.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 смотри мой ответ.

Ответы [ 2 ]

0 голосов
/ 06 февраля 2019

Я пытался использовать sh <(curl -sL https://raw.githubusercontent.com/ocaml/opam/master/shell/install.sh), но не смог сделать это как неинтерактивный скрипт.

Я нашел этот метод, который работает, хотя с использованием Ubuntu 14.04 добавление ppa sudo add-apt-repository ppa:avsm/ppa и затем обновление, обновление, dist-upgrade и, наконец, установка 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`

После этого все должно быть последним на данный момент.

0 голосов
/ 05 февраля 2019

Ну, как говорится в журнале, вам нужно обновить OPAM до 2.x.Старая версия больше не поддерживается.Поэтому вы должны следовать инструкциям по установке и обновить OCaml.

...