Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error applying opam update and opam upgrade #4314

Open
918483 opened this issue Jan 12, 2025 · 9 comments
Open

Error applying opam update and opam upgrade #4314

918483 opened this issue Jan 12, 2025 · 9 comments
Labels

Comments

@918483
Copy link

918483 commented Jan 12, 2025

Description

[ERROR] The compilation of dune.3.17.1 failed at "./_boot/dune.exe build dune.install --release --profile dune-bootstrap -j 5".

#=== ERROR while compiling dune.3.17.1 ========================================#
# context     2.1.5 | linux/x86_64 | ocaml-base-compiler.4.14.0 | https://opam.ocaml.org#f6b499e5d079ef80bd97ca3981dc9fe883f26922
# path        ~/.opam/4.14.0/.opam-switch/build/dune.3.17.1
# command     ~/.opam/4.14.0/.opam-switch/build/dune.3.17.1/./_boot/dune.exe build dune.install --release --profile dune-bootstrap -j 5
# exit-code   2
# env-file    ~/.opam/log/dune-3022373-b902fe.env
# output-file ~/.opam/log/dune-3022373-b902fe.out
### output ###
# Fatal error: exception ("Env.of_unix: entry without '=' found in the environment", { var = "" })



<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
┌─ The following actions failed
│ λ build dune 3.17.1
└─
╶─ No changes have been performed

Steps to reproduce

opam update
opam upgrade

Expected behavior

update the system via opam

Liquidsoap version

Liquidsoap 2.3.0+dev
Copyright (c) 2003-2024 Savonet team
Liquidsoap is open-source software, released under GNU General Public License.
See <http://liquidsoap.info> for more information.

Liquidsoap build config

* Liquidsoap version  : 2.3.0+dev

 * Compilation options
   - Release build       : false
   - Git SHA             : (none)
   - OCaml version       : 4.14.0
   - OS type             : Unix
   - Libs versions       : angstrom=0.16.1 asetmap=0.8.1 asn1-combinators=0.3.2 astring=0.8.5 base=v0.16.3 base.base_internalhash_types=v0.16.3 base.caml=v0.16.3 base.shadow_stdlib=v0.16.3 base64=3.5.1 bigarray=[distributed with Ocaml] bigarray-compat=1.1.0 bigstringaf=0.10.0 bos=0.2.1 bytes=[distributed with OCaml 4.02 or above] ca-certs=v1.0.0 camlp-streams camomile.lib=2.0 cohttp=v6.0.0 cohttp-lwt=v6.0.0 cohttp-lwt-unix=v6.0.0 conduit=7.1.0 conduit-lwt=7.1.0 conduit-lwt-unix=7.1.0 cry=1.0.3 cstruct=6.2.0 ctypes=0.23.0 ctypes-foreign=0.23.0 curl=0.9.2 digestif.c=1.2.0 domain-name=0.4.0 domain_shims dtools=0.4.5 dune-build-info=3.17.0 dune-private-libs.dune-section=3.17.0 dune-site=3.17.0 dune-site.private=3.17.0 duppy=0.9.4 eqaf=0.10 fdkaac=0.3.3 ffmpeg-av=0aa3db3 ffmpeg-avcodec=0aa3db3 ffmpeg-avdevice=0aa3db3 ffmpeg-avfilter=0aa3db3 ffmpeg-avutil=0aa3db3 ffmpeg-swresample=0aa3db3 ffmpeg-swscale=0aa3db3 fileutils=0.6.4 fmt=0.9.0 fpath=0.7.3 gen=1.1 gmap=0.3.0 http=v6.0.0 http.__private__.http_bytebuffer=v6.0.0 integers ipaddr=5.6.0 ipaddr-sexp=5.6.0 ipaddr.unix=5.6.0 kdf.hkdf=1.0.0 kdf.pbkdf=1.0.0 lame=0.3.7 liquidsoap-lang=2.3.0 liquidsoap-lang.console=2.3.0 liquidsoap_builtins liquidsoap_core liquidsoap_fdkaac liquidsoap_ffmpeg liquidsoap_lame liquidsoap_mad liquidsoap_ndi liquidsoap_optionals liquidsoap_oss liquidsoap_prometheus liquidsoap_runtime liquidsoap_samplerate liquidsoap_sdl liquidsoap_sdl_log_level liquidsoap_ssl liquidsoap_stereotool liquidsoap_tls liquidsoap_xmlplaylist logs=0.7.0 logs.fmt=0.7.0 logs.lwt=0.7.0 lwt lwt.unix macaddr=5.6.0 mad=0.5.3 magic-mime=1.3.1 mem_usage=0.1.1 menhirLib=20211128 metadata=0.3.0 mirage-crypto=1.1.0 mirage-crypto-ec=1.1.0 mirage-crypto-pk=1.1.0 mirage-crypto-rng=1.1.0 mirage-crypto-rng.unix=1.1.0 mm=0.8.6 mm.audio=0.8.6 mm.base=0.8.6 mm.image=0.8.6 mm.midi=0.8.6 mm.video=0.8.6 ndi ocplib-endian ocplib-endian.bigstring ohex ppx_compare.runtime-lib=v0.16.0 ppx_hash.runtime-lib=v0.16.0 ppx_sexp_conv.runtime-lib=v0.16.0 prometheus=1.2 prometheus-app=1.2 ptime=1.2.0 ptime.clock=1.2.0 ptime.clock.os=1.2.0 re=1.12.0 rresult=0.7.0 samplerate=0.1.6 saturn_lockfree=0.4.1 sedlex=3.3 seq=[distributed with OCaml 4.07 or above] sexplib0=v0.16.0 ssl=0.7.0 stdlib-shims=0.3.0 stereotool str=[distributed with Ocaml] stringext=1.6.0 threads=[distributed with Ocaml] threads.posix=[internal] tls=1.0.4 tsdl=v1.1.0 tsdl-image=0.5 tsdl-ttf=0.6 unix=[distributed with Ocaml] uri=4.4.0 uri-sexp=4.4.0 uri.services=4.4.0 x509=1.0.5 xmlm=1.4.0 xmlplaylist=0.1.5 zarith=1.14
   - architecture        : amd64
   - host                : x86_64-pc-linux-gnu
   - target              : x86_64-pc-linux-gnu
   - system              : linux
   - ocamlopt_cflags     : -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC
   - native_c_compiler   : gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64
   - native_c_libraries  : -lm

 * Configured paths
   - mode              : default
   - standard library  : (set by dune-site)
   - scripted binaries : (set by dune-site)
   - rundir            : (set by dune-site)
   - logdir            : (set by dune-site)
   - user cache        : $HOME/.cache/liquidsoap (override with $LIQ_CACHE_USER_DIR)
   - system cache      : (set by dune-site) (override with $LIQ_CACHE_SYSTEM_DIR)
   - camomile files    : (set by dune-site)

 * Supported input formats
   - MP3               : yes
   - AAC               : no (requires faad)
   - Ffmpeg            : yes
   - Flac (native)     : no (requires flac)
   - Flac (ogg)        : no (requires ogg)
   - Opus              : no (requires opus)
   - Speex             : no (requires speex)
   - Theora            : no (requires theora)
   - Vorbis            : no (requires vorbis)
   - WAV/AIFF          : yes (native)

 * Supported output formats
   - FDK-AAC           : yes
   - FFmpeg            : yes
   - MP3               : yes
   - MP3 (fixed-point) : no (requires shine)
   - Flac (native)     : no (requires flac)
   - Flac (ogg)        : no (requires ogg)
   - Opus              : no (requires opus)
   - Speex             : no (requires speex)
   - Theora            : no (requires theora)
   - Vorbis            : no (requires vorbis)
   - WAV/AIFF          : yes (native)

 * Tags
   - AAC               : no (requires faad)
   - FFmpeg            : yes
   - FLAC (native)     : no (requires flac)
   - Flac (ogg)        : no (requires ogg)
   - Native decoder    : yes
   - Vorbis            : no (requires vorbis)

 * Input / output
   - ALSA              : no (requires alsa)
   - AO                : no (requires ao)
   - FFmpeg            : yes
   - JACK              : no (requires bjack)
   - NDI               : yes
   - OSS               : yes
   - Portaudio         : no (requires portaudio)
   - Pulseaudio        : no (requires pulseaudio)
   - SRT               : no (requires srt)

 * Audio manipulation
   - FFmpeg            : yes
   - LADSPA            : no (requires ladspa)
   - Lilv              : no (requires lilv)
   - Samplerate        : yes
   - SoundTouch        : no (requires soundtouch)
   - StereoTool        : yes

 * Video manipulation
   - camlimages        : no (requires camlimages)
   - FFmpeg            : yes
   - frei0r            : no (requires frei0r)
   - ImageLib          : no (requires imagelib)
   - SDL               : yes

 * MIDI manipulation
   - DSSI              : no (requires dssi)

 * Visualization
   - GD                : no (requires gd)
   - Graphics          : no (requires graphics)
   - SDL               : yes

 * Additional libraries
   - FFmpeg filters    : yes
   - FFmpeg devices    : yes
   - inotify           : no (requires inotify)
   - irc               : no (requires irc-client-unix)
   - jemalloc          : no (requires jemalloc)
   - lastfm            : no (requires lastfm)
   - lo                : no (requires lo)
   - memtrace          : no (requires memtrace)
   - osc               : no (requires osc-unix)
   - ssl               : yes
   - sqlite3           : no (requires sqlite3)
   - tls               : yes
   - posix-time2       : no (requires posix)
   - windows service   : no (requires winsvc)
   - YAML support      : no (requires yaml)
   - XML playlists     : yes

 * Monitoring
   - Prometheus        : yes

Installation method

From OPAM

Additional Info

No response

@918483 918483 added the bug label Jan 12, 2025
@918483
Copy link
Author

918483 commented Jan 14, 2025

@toots ??

@toots
Copy link
Member

toots commented Jan 14, 2025

This looks like an error with your opam install.

@vitoyucepi
Copy link
Collaborator

vitoyucepi commented Jan 14, 2025

Hi @918483,
Can you post the result of the opam list command and the contents of the /etc/os-release file?

@918483
Copy link
Author

918483 commented Jan 15, 2025

Running as root is not recommended

Packages matching: installed

Name # Installed # Synopsis

angstrom 0.16.1 Parser combinators built for speed and memory-efficiency
base v0.16.3 Full standard library replacement for OCaml
base-bigarray base
base-bytes base Bytes library distributed with the OCaml compiler
base-threads base
base-unix base
bigstringaf 0.10.0 Bigstring intrinsics and fast blits based on memcpy/memmove
camlp-streams 5.0.1 The Stream and Genlex libraries for use with Camlp4 and Camlp5
camomile 2.0.0 A Unicode library
conf-bash 1 Virtual package to install the Bash shell
conf-fdkaac 1 Virtual package relying on fdk-aac
conf-ffmpeg 1 Virtual package relying on FFmpeg
conf-lame 1 Virtual package relying on lame
conf-libcurl 2 Virtual package relying on a libcurl system installation
conf-libpcre 2 Virtual package relying on a libpcre system installation
conf-libssl 4 Virtual package relying on an OpenSSL library system installation
conf-mad 1 Virtual package relying on mad
conf-pkg-config 3 Check if pkg-config is installed and create an opam switch local pkgconfig folder
conf-samplerate 1 Virtual package relying on samplerate
conf-taglib 1 Virtual package relying on taglib
cry 1.0.3 OCaml client for the various icecast & shoutcast source protocols
csexp 1.5.2 Parsing and printing of S-expressions in Canonical form
domain_shims 0.1.0 A non-parallel implementation of Domains compatible with OCaml 4
dtools 0.4.5 Library providing various helper functions to make daemons
dune 3.17.0 Fast, portable, and opinionated build system
dune-build-info 3.17.0 Embed build information inside executable
dune-configurator 3.17.0 Helper library for gathering system configuration
dune-private-libs 3.17.0 Private libraries of Dune
dune-site 3.17.0 Embed locations information inside executable and libraries
duppy 0.9.4 Library providing monadic threads
dyn 3.17.0 Dynamic type
fdkaac 0.3.3 Fraunhofer FDK AAC Codec Library
ffmpeg 1.2.1 Bindings for the ffmpeg libraries
ffmpeg-av 1.2.1 Bindings for the ffmpeg libraries -- top-level helpers
ffmpeg-avcodec 1.2.1 Bindings for the ffmpeg avcodec library
ffmpeg-avdevice 1.2.1 Bindings for the ffmpeg avdevice library
ffmpeg-avfilter 1.2.1 Bindings for the ffmpeg avfilter library
ffmpeg-avutil 1.2.1 Bindings for the ffmpeg avutil libraries
ffmpeg-swresample 1.2.1 Bindings for the ffmpeg swresample library
ffmpeg-swscale 1.2.1 Bindings for the ffmpeg swscale library
fileutils 0.6.4 API to manipulate files (POSIX like) and filenames
gen 1.1 Iterators for OCaml, both restartable and consumable
host-arch-x86_64 1 OCaml on amd64 (64-bit)
host-system-other 1 OCaml on an unidentified system
lame 0.3.7 MP3 encoding library
liquidsoap 2.3.0 Swiss-army knife for multimedia streaming
liquidsoap-core 2.3.0 Liquidsoap core library and binary
liquidsoap-lang 2.3.0 Liquidsoap language library
liquidsoap-libs 2.3.0 Liquidosap standard library
liquidsoap-libs-extra 2.3.0 Liquidosap standard library -- extra functionalities
mad 0.5.3 Mad decoding library
magic-mime 1.3.1 Map filenames to common MIME types
mem_usage 0.1.1 Cross-platform stats about memory usage
menhir 20240715 An LR(1) parser generator
menhirCST 20240715 Runtime support library for parsers generated by Menhir
menhirLib 20240715 Runtime support library for parsers generated by Menhir
menhirSdk 20240715 Compile-time library for auxiliary tools related to Menhir
metadata 0.3.0 Read metadata from various file formats
mm 0.8.6 The mm library contains high-level APIs to create and manipulate multimedia streams (audio, video, MIDI)
ocaml 4.14.0 The OCaml compiler (virtual package)
ocaml-base-compiler 4.14.0 Official release 4.14.0
ocaml-compiler-libs v0.12.4 OCaml compiler libraries repackaged
ocaml-config 2 OCaml Switch Configuration
ocaml-options-vanilla 1 Ensure that OCaml is compiled with no special options enabled
ocaml-syntax-shims 1.0.0 Backport new syntax to older OCaml versions
ocamlbuild 0.15.0 OCamlbuild is a build system with builtin rules to easily build most OCaml projects
ocamlfind 1.9.6 A library manager for OCaml
ocurl 0.9.2 Bindings to libcurl
opam-depext 1.2.3 Install OS distribution packages
ordering 3.17.0 Element ordering
pcre 7.5.0 Bindings to the Perl Compatibility Regular Expressions library
pp 2.0.0 Pretty-printing library
ppx_base v0.16.0 Base set of ppx rewriters
ppx_cold v0.16.0 Expands [@Cold] into [@inline never][@specialise never][@Local never]
ppx_compare v0.16.0 Generation of comparison functions from types
ppx_derivers 1.2.1 Shared [@@deriving] plugin registry
ppx_enumerate v0.16.0 Generate a list containing all values of a finite type
ppx_globalize v0.16.0 A ppx rewriter that generates functions to copy local values to the global heap
ppx_hash v0.16.0 A ppx rewriter that generates hash functions from type expressions and definitions
ppx_sexp_conv v0.16.0 [@@deriving] plugin to generate S-expression conversion functions
ppx_string v0.16.0 Ppx extension for string interpolation
ppxlib 0.33.0 Standard infrastructure for ppx rewriters
re 1.12.0 RE is a regular expression library for OCaml
samplerate 0.1.6 Samplerate audio conversion library
saturn_lockfree 0.4.1 Collection of lock-free data structures for Multicore OCaml
sedlex 3.3 An OCaml lexer generator for Unicode
seq base Compatibility package for OCaml's standard iterator type starting from 4.07.
sexplib0 v0.16.0 Library containing the definition of S-expressions and some base converters
ssl 0.7.0 Bindings for OpenSSL
stdlib-shims 0.3.0 Backport some of the new stdlib features to older compiler
stdune 3.17.0 Dune's unstable standard library
stringext 1.6.0 Extra string functions for OCaml
taglib 0.3.10 Bindings for the taglib library
topkg 1.0.7 The transitory OCaml software packager
uri 4.4.0 An RFC3986 URI/URL parsing library
xmlm 1.4.0 Streaming XML codec for OCaml
xmlplaylist 0.1.5 Library to parse various file playlists in XML format

@918483
Copy link
Author

918483 commented Jan 15, 2025

PRETTY_NAME="Ubuntu 22.04.5 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.5 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

@vitoyucepi
Copy link
Collaborator

I don't know if this will help, but try the opam clean command and then opam update;opam upgrade;.

The only other option I know of is to remove the opam switch, either with opam switch remove or by removing the opam directory, for me it's ~/.opam. Then recreate switch and rebuild everything.

But if you don't want to remove the old switch, try to create a new one first and build everything. After moving to the new switch, remove the old one.

@918483
Copy link
Author

918483 commented Jan 15, 2025

It doesn't work on the old machine or on the new machine I took to test it, it gives the same error!

@918483
Copy link
Author

918483 commented Jan 15, 2025

error in dune.3.7.1

@vitoyucepi
Copy link
Collaborator

It doesn't work on the old machine or on the new machine I took to test it, it gives the same error!

The only other option I know of is to remove the opam switch, either with opam switch remove or by removing the opam directory, for me it's ~/.opam. Then recreate switch and rebuild everything.

But if you don't want to remove the old switch, try to create a new one first and build everything. After moving to the new switch, remove the old one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants