Bug 38374 - opam switch не работает из-за сломанного Bubblewrap
Summary: opam switch не работает из-за сломанного Bubblewrap
Status: CLOSED FIXED
Alias: None
Product: Branch p9
Classification: Distributions
Component: opam (show other bugs)
Version: не указана
Hardware: x86_64 Linux
: P5 major
Assignee: qa-team@altlinux.org
QA Contact: qa-p9@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-04-21 13:04 MSK by Yuriy Al. Shirokov
Modified: 2021-11-30 16:49 MSK (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Yuriy Al. Shirokov 2020-04-21 13:04:54 MSK
При попытке создать opam switch подхватывается системный компилятор вместо компилятора из свитча:

∗ installed ocaml-base-compiler.4.06.1
∗ installed ocaml-config.1
+ /home/uri/.opam/opam-init/hooks/sandbox.sh "build" "ocaml" "/home/uri/.opam/4.06.1/share/ocaml-config/gen_ocaml_config.ml" "4.06.1" "ocaml" (CWD=/home/uri/.opam/4.06.1/.opam-switch/build/ocaml.4.06.1)
- OCaml version mismatch: 4.07.1, expected 4.06.1
[ERROR] The compilation of ocaml failed at "/home/uri/.opam/opam-init/hooks/sandbox.sh build ocaml
        /home/uri/.opam/4.06.1/share/ocaml-config/gen_ocaml_config.ml 4.06.1 ocaml".

#=== ERROR while compiling ocaml.4.06.1 =======================================#
# context     2.0.4 | linux/x86_64 | ocaml-base-compiler.4.06.1 | https://opam.ocaml.org#9a781470
# path        ~/.opam/4.06.1/.opam-switch/build/ocaml.4.06.1
# command     ~/.opam/opam-init/hooks/sandbox.sh build ocaml /home/uri/.opam/4.06.1/share/ocaml-config/gen_ocaml_config.ml 4.06.1 ocaml
# exit-code   1
# env-file    ~/.opam/log/ocaml-154708-548b09.env
# output-file ~/.opam/log/ocaml-154708-548b09.out
### output ###
# OCaml version mismatch: 4.07.1, expected 4.06.1



<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
┌─ The following actions failed
│ λ build ocaml 4.06.1
└─
┌─ The following changes have been performed
│ ∗ install base-bigarray       base
│ ∗ install base-threads        base
│ ∗ install base-unix           base
│ ∗ install ocaml-base-compiler 4.06.1
│ ∗ install ocaml-config        1
└─
# Run eval $(opam env) to update the current shell environment
Switch initialisation failed: clean up? ('n' will leave the switch partially installed) [Y/n] 

Это связано с неработоспособным Bubblewrap в AltLinux — несмотря на bwrap, изнутри свитча подхватывается системный компилятор.

Сработавший у меня костыль — собрать Bubblewrap 0.4.1 с гитхаба и положить в ~/bin.

Возможные решения:
 - обновить Bubblewrap в AltLinux,
 - таскать вместе с opam новый Bubblewrap.
Comment 1 Anton Farygin 2021-11-30 16:49:46 MSK
bubblewrap исправлен в p9 начиная с версии 0.4.1-alt2, соответственно opam тоже должен начать работать.