Skip to content

compilation issue #31

@campiador

Description

@campiador

On OSX, ocaml 4.06.01 and ruby 2.5.1p57, I face the following error trying to make redexer.

$ make

ocamlbuild -use-ocamlfind main.native

  • ocamlfind ocamlopt -c -package sha,str,unix,ppx_deriving.std,ppx_deriving_yojson,yojson -I src -I ocamlutil -I src/ext -o src/util.cmx src/util.ml
    File "src/util.ml", line 108, characters 15-23:
    Warning 3: deprecated: S.create
    Use Bytes.create instead.
    File "src/util.ml", line 111, characters 16-31:
    Warning 3: deprecated: String.set
    Use Bytes.set instead.
    File "src/util.ml", line 124, characters 8-51:
    Error: This expression has type bytes list
    but an expression was expected of type string list
    Type bytes is not compatible with type string
    Command exited with code 2.
    Compilation unsuccessful after building 27 targets (0 cached) in 00:00:02.
    make: *** [main.native] Error 10

This error probably has to do with strings being mutable by default before ocaml version 4.06. So for the time being a workaround is switching back to ocaml version 4.02.2:

opam init --comp 4.02.2
opam switch 4.02.2

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions