Broken OCaml packages (e.g. frama-c and binsec)

  • Open
  • quality assurance status badge
Details
2 participants
  • Julien Lepiller
  • pukkamustard
Owner
unassigned
Submitted by
pukkamustard
Severity
normal
P
P
pukkamustard wrote on 25 Mar 11:29 +0100
(address . bug-guix@gnu.org)
86zfummwfs.fsf@posteo.net
As reported by Arnaud (off-list mail) some OCaml packages build fine but
seem to be broken.

Examples include `frama-c` and `binsec`:

```
guix shell frama-c -- frama-c
[kernel] Current source was: :0
The full backtrace is:
Raised at Dune_site_plugins__Plugins.lookup_and_summarize.loop.(fun) in file "otherlibs/dune-site/src/plugins/plugins.ml", line 237, characters 16-87
Called from Dune_site_plugins__Plugins.load_gen in file "otherlibs/dune-site/src/plugins/plugins.ml", line 263, characters 39-69
Called from Stdlib__List.iter in file "list.ml", line 110, characters 12-15
Called from Stdlib__List.iter in file "list.ml", line 110, characters 12-15
Called from Frama_c_kernel__Kernel.bootstrap_loader in file "src/kernel_services/plugin_entry_points/kernel.ml", line 933, characters 35-62
Called from Frama_c_kernel__Cmdline.parse_and_boot in file "src/kernel_services/cmdline_parameters/cmdline.ml", line 894, characters 2-22
Called from Frama_c_kernel__Cmdline.catch_toplevel_run in file "src/kernel_services/cmdline_parameters/cmdline.ml", line 233, characters 4-8
Unexpected error (The library "frama-c-aorai.core" can't be found in the search paths "/gnu/store/psmc4940aa9bj23dddkglv0p2yhi05kn-ocaml-4.14.1/lib".).
Please report as 'crash' at https://git.frama-c.com/pub/frama-c/issues
Your Frama-C version is 27.1 (Cobalt).
Note that a version and a backtrace alone often do not contain enough
information to understand the bug. Guidelines for reporting bugs are at:
```

```
guix shell binsec -- binsec -v
Fatal error: exception The library "binsec.sse.checkct" can't be found in the search paths "/gnu/store/psmc4940aa9bj23dddkglv0p2yhi05kn-ocaml-4.14.1/lib".
```
J
J
Julien Lepiller wrote on 2 Apr 16:01 +0200
8CFAB584-A35A-4D75-83EC-88E4056337A2@lepiller.eu
At least for Frama-C, the issue is environment variables. It requires OCAMLPATH to work correctly. So this works:

guix shell frama-c ocaml -- frama-c

Even though the compiler is not needed.

It's another example of why we should propagate search paths, although we could also redefine the same search path in packages that need it ;)

Le 25 mars 2024 11:29:44 GMT+01:00, pukkamustard <pukkamustard@posteo.net> a écrit :
Toggle quote (33 lines)
>
>As reported by Arnaud (off-list mail) some OCaml packages build fine but
>seem to be broken.
>
>Examples include `frama-c` and `binsec`:
>
>```
>guix shell frama-c -- frama-c
>[kernel] Current source was: :0
> The full backtrace is:
> Raised at Dune_site_plugins__Plugins.lookup_and_summarize.loop.(fun) in file "otherlibs/dune-site/src/plugins/plugins.ml", line 237, characters 16-87
> Called from Dune_site_plugins__Plugins.load_gen in file "otherlibs/dune-site/src/plugins/plugins.ml", line 263, characters 39-69
> Called from Stdlib__List.iter in file "list.ml", line 110, characters 12-15
> Called from Stdlib__List.iter in file "list.ml", line 110, characters 12-15
> Called from Frama_c_kernel__Kernel.bootstrap_loader in file "src/kernel_services/plugin_entry_points/kernel.ml", line 933, characters 35-62
> Called from Frama_c_kernel__Cmdline.parse_and_boot in file "src/kernel_services/cmdline_parameters/cmdline.ml", line 894, characters 2-22
> Called from Frama_c_kernel__Cmdline.catch_toplevel_run in file "src/kernel_services/cmdline_parameters/cmdline.ml", line 233, characters 4-8
>
> Unexpected error (The library "frama-c-aorai.core" can't be found in the search paths "/gnu/store/psmc4940aa9bj23dddkglv0p2yhi05kn-ocaml-4.14.1/lib".).
> Please report as 'crash' at https://git.frama-c.com/pub/frama-c/issues
> Your Frama-C version is 27.1 (Cobalt).
> Note that a version and a backtrace alone often do not contain enough
> information to understand the bug. Guidelines for reporting bugs are at:
> https://git.frama-c.com/pub/frama-c/-/wikis/Guidelines-for-reporting-bugs
>```
>
>```
>guix shell binsec -- binsec -v
>Fatal error: exception The library "binsec.sse.checkct" can't be found in the search paths "/gnu/store/psmc4940aa9bj23dddkglv0p2yhi05kn-ocaml-4.14.1/lib".
>```
>
>
>
?