[Debian-med-packaging] [covid-19] Help for ocaml package needed

Shayan Doust hello at shayandoust.me
Sat Jun 13 15:26:54 BST 2020


Hello,

With the situation regarding mcl[1] and its OCaml bindings solved, I am
now attempting to build pplacer[2] against mcl. With mcl and its OCaml
binding installed, I hit an issue during build time (within sid
environment via pbuilder). An error is as follows:

```
...
If you need to stay compatible with OCaml < 4.07, you can use the
stdlib-shims library: https://github.com/ocaml/stdlib-shims
File "common_src/number.ml", line 121, characters 16-34:
121 |   let compare = Pervasives.compare
                      ^^^^^^^^^^^^^^^^^^
Alert deprecated: module Stdlib.Pervasives
Use Stdlib instead.

If you need to stay compatible with OCaml < 4.07, you can use the
stdlib-shims library: https://github.com/ocaml/stdlib-shims
+ ocamlfind ocamlc -c -annot -w Z -package batteries -package csv
-package xmlm -package gsl -package sqlite3 -package zip -package mcl
-thread -I common_src -I json_src -I pdprune_src -I pplacer_src -I
pam_src -I tests -I cdd_src -I tests/pplacer -I tests/json -I tests/rppr
-I tests/guppy -o common_src/ppatteries.cmo common_src/ppatteries.ml
File "common_src/ppatteries.ml", line 64, characters 50-60:
64 | let csv_out_channel ch = new IO.out_channel ch |> to_csv_out
                                                       ^^^^^^^^^^
Error: This expression has type
         (< close_out : unit -> unit; output : string -> int -> int -> int;
            .. >
          as 'a) ->
         < close_out : unit -> unit; output : string -> int -> int -> int >
       but an expression was expected of type IO.out_channel -> 'weak3
       Type
         < close_out : unit -> unit; output : string -> int -> int -> int;
           .. >
         as 'a
       is not compatible with type
         IO.out_channel =
           < close_out : unit -> unit; flush : unit -> unit;
             output : Bytes.t -> int -> int -> int >
       Type string is not compatible with type Bytes.t = bytes/2
       Types for method output are incompatible
       File "src/batteries.mlv", line 66, characters 0-20:
         Definition of type bytes/1
       File "_none_", line 1:
         Definition of type bytes/2
Command exited with code 2.
Compilation unsuccessful after building 41 targets (0 cached) in 00:00:07.
make[2]: *** [Makefile:21: pplacer.native] Error 10
make[2]: Leaving directory '/pplacer'
make[1]: *** [Makefile:16: pplacer] Error 2
make[1]: Leaving directory '/pplacer'
dh_auto_build: error: make -j4 "INSTALL=install --strip-program=true"
returned exit code 2
```

Any help, suggestions or contributions would be much appreciated as it
seems to be the final hurdle.

Kind regards,
Shayan Doust

[1]: https://salsa.debian.org/med-team/mcl
[2]: https://salsa.debian.org/med-team/pplacer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0x6D7D441919D02395.asc
Type: application/pgp-keys
Size: 4983 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/debian-med-packaging/attachments/20200613/f496224a/attachment-0001.key>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/debian-med-packaging/attachments/20200613/f496224a/attachment-0001.sig>


More information about the Debian-med-packaging mailing list