alexozer / flitter

A Livesplit-inspired speedrunning split timer for Linux/macOS terminal. Supports global hotkeys.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Dune build & install

slashinfty opened this issue · comments

Minor inconvenience, but on the first attempt to build with dune, I was notified three libraries were not found (after installing dune core lwt re color sexp_pretty): uuseg, lwt_ppx, and uutf.

Then, I attempted dune build, and I received this:

$ dune build
File "vendor/notty/src/notty.ml", line 432, characters 6-36:
432 |       pp_set_formatter_tag_functions fmt
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Error (alert deprecated): Stdlib.Format.pp_set_formatter_tag_functions
This function will erase non-string tag formatting functions. Use Format.pp_set_formatter_stag_functions.
File "vendor/notty/src/notty.ml", line 441, characters 41-52:
441 |     let pp_open_attribute_tag fmt attr = pp_open_tag fmt (A.to_tag attr)
                                               ^^^^^^^^^^^
Error (alert deprecated): Stdlib.Format.pp_open_tag
Use Format.pp_open_stag.
File "vendor/notty/src/notty.ml", line 458, characters 47-59:
458 |       pp_open_attribute_tag fmt attr; f fmt a; pp_close_tag fmt ()
                                                     ^^^^^^^^^^^^
Error (alert deprecated): Stdlib.Format.pp_close_tag
Use Format.pp_close_stag.
File "vendor/notty/lwt/notty_lwt.ml", line 128, characters 6-24:
128 |       Lwt_sequence.add_r (fun () -> release t) Lwt_main.exit_hooks |> ignore;
            ^^^^^^^^^^^^^^^^^^
Alert deprecated: module Lwt_sequence
 Use package lwt-dllist. See
   https://github.com/mirage/lwt-dllist
File "vendor/notty/lwt/notty_lwt.ml", line 128, characters 47-66:
128 |       Lwt_sequence.add_r (fun () -> release t) Lwt_main.exit_hooks |> ignore;
                                                     ^^^^^^^^^^^^^^^^^^^
Alert deprecated: Lwt_main.exit_hooks
 Use module Lwt_main.Exit_hooks.
File "_none_", line 1: 
Warning 58: no cmx file was found in path for module Toploop, and its interface was not compiled with -opaque
File "vendor/notty/lwt/notty_lwt.ml", line 128, characters 6-24:
128 |       Lwt_sequence.add_r (fun () -> release t) Lwt_main.exit_hooks |> ignore;
            ^^^^^^^^^^^^^^^^^^
Alert deprecated: module Lwt_sequence
 Use package lwt-dllist. See
   https://github.com/mirage/lwt-dllist
File "vendor/notty/lwt/notty_lwt.ml", line 128, characters 47-66:
128 |       Lwt_sequence.add_r (fun () -> release t) Lwt_main.exit_hooks |> ignore;
                                                     ^^^^^^^^^^^^^^^^^^^
Alert deprecated: Lwt_main.exit_hooks
 Use module Lwt_main.Exit_hooks.

I installed lwt-dllist. When I attempted dune install after, I got:

Error: The following <package>.install are missing:
- _build/default/flitter.install
- _build/default/vendor/notty/notty.install
Hint: try running: dune build @install

Then I got to this with dune build @install:

File "vendor/notty/src/notty.ml", line 432, characters 6-36:
432 |       pp_set_formatter_tag_functions fmt
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Error (alert deprecated): Stdlib.Format.pp_set_formatter_tag_functions
This function will erase non-string tag formatting functions. Use Format.pp_set_formatter_stag_functions.
File "vendor/notty/src/notty.ml", line 441, characters 41-52:
441 |     let pp_open_attribute_tag fmt attr = pp_open_tag fmt (A.to_tag attr)
                                               ^^^^^^^^^^^
Error (alert deprecated): Stdlib.Format.pp_open_tag
Use Format.pp_open_stag.
File "vendor/notty/src/notty.ml", line 458, characters 47-59:
458 |       pp_open_attribute_tag fmt attr; f fmt a; pp_close_tag fmt ()
                                                     ^^^^^^^^^^^^
Error (alert deprecated): Stdlib.Format.pp_close_tag
Use Format.pp_close_stag.

I'm now at a point I can't continue.

Hi, thanks for reporting the issue, sorry you can't build!

Are you on Linux or Mac? If Linux, which distribution?

Also, could you post the output of opam list?

I'm on MX Linux (Debian 10).

Output of opam list

# Packages matching: installed
# Name                  # Installed # Synopsis
base                    v0.12.2     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
base_bigstring          v0.12.0     String type based on [Bigarray], for use in I/O and C-bindings
base_quickcheck         v0.12.1     Randomized testing framework, designed for compatibility with Ba
bin_prot                v0.12.0     A binary protocol generator
color                   0.2.0
conf-m4                 1           Virtual package relying on m4
core                    v0.12.4     Industrial strength alternative to OCaml's standard library
core_kernel             v0.12.3     Industrial strength alternative to OCaml's standard library
cppo                    1.6.6       Code preprocessor like cpp for OCaml
dune                    1.11.4      Fast, portable and opinionated build system
dune-configurator       1.0.0
fieldslib               v0.12.0     Syntax extension to define first class values representing recor
gg                      0.9.3       Basic types for computer graphics in OCaml
jane-street-headers     v0.12.0     Jane Street C header files
jbuilder                transition  This is a transition package, jbuilder is now named dune. Use th
jst-config              v0.12.0     Compile-time configuration for Jane Street libraries
lwt                     4.4.0       Promises and event-driven I/O
lwt-dllist              1.0.0       Mutable doubly-linked list with Lwt iterators
lwt_ppx                 1.2.4       PPX syntax for Lwt, providing something similar to async/await f
mmap                    1.1.0       File mapping functionality
num                     1.2         The legacy Num library for arbitrary-precision integer and ratio
ocaml                   4.09.0      The OCaml compiler (virtual package)
ocaml-base-compiler     4.09.0      Official release 4.09.0
ocaml-compiler-libs     v0.12.1     OCaml compiler libraries repackaged
ocaml-config            1           OCaml Switch Configuration
ocaml-migrate-parsetree 1.4.0       Convert OCaml parsetrees between different versions
ocamlbuild              0.14.0      OCamlbuild is a build system with builtin rules to easily build 
ocamlfind               1.8.1       A library manager for OCaml
ocplib-endian           1.0         Optimised functions to read and write int16/32/64 from strings a
octavius                1.2.1       Ocamldoc comment syntax parser
parsexp                 v0.12.0     S-expression parsing library
ppx_assert              v0.12.0     Assert-like extension nodes that raise useful errors on failure
ppx_base                v0.12.0     Base set of ppx rewriters
ppx_bench               v0.12.0     Syntax extension for writing in-line benchmarks in ocaml code
ppx_bin_prot            v0.12.1     Generation of bin_prot readers and writers from types
ppx_compare             v0.12.0     Generation of comparison functions from types
ppx_custom_printf       v0.12.1     Printf-style format-strings for user-defined string conversion
ppx_derivers            1.2.1       Shared [@@deriving] plugin registry
ppx_enumerate           v0.12.0     Generate a list containing all values of a finite type
ppx_expect              v0.12.0     Cram like framework for OCaml
ppx_fail                v0.12.0     Add location to calls to failwiths
ppx_fields_conv         v0.12.0     Generation of accessor and iteration functions for ocaml records
ppx_hash                v0.12.0     A ppx rewriter that generates hash functions from type expressio
ppx_here                v0.12.0     Expands [%here] into its location
ppx_inline_test         v0.12.0     Syntax extension for writing in-line tests in ocaml code
ppx_jane                v0.12.0     Standard Jane Street ppx rewriters
ppx_js_style            v0.12.0     Code style checker for Jane Street Packages
ppx_let                 v0.12.0     Monadic let-bindings
ppx_module_timer        v0.12.0     Ppx rewriter that records top-level module startup times
ppx_optcomp             v0.12.0     Optional compilation for OCaml
ppx_optional            v0.12.0     Pattern matching on flat options
ppx_pipebang            v0.12.0     A ppx rewriter that inlines reverse application operators `|>` a
ppx_sexp_conv           v0.12.0     [@@deriving] plugin to generate S-expression conversion function
ppx_sexp_message        v0.12.0     A ppx rewriter for easy construction of s-expressions
ppx_sexp_value          v0.12.0     A ppx rewriter that simplifies building s-expressions from ocaml
ppx_stable              v0.12.0     Stable types conversions generator
ppx_tools_versioned     5.2.3       A variant of ppx_tools based on ocaml-migrate-parsetree
ppx_typerep_conv        v0.12.0     Generation of runtime types from type declarations
ppx_variants_conv       v0.12.0     Generation of accessor and iteration functions for ocaml variant
ppxlib                  0.8.1       Base library and tools for ppx rewriters
re                      1.9.0       RE is a regular expression library for OCaml
result                  1.4         Compatibility Result module
seq                     base        Compatibility package for OCaml's standard iterator type startin
sexp_pretty             v0.12.0     S-expression pretty-printer
sexplib                 v0.12.0     Library for serializing OCaml values to and from S-expressions
sexplib0                v0.12.0     Library containing the definition of S-expressions and some base
spawn                   v0.13.0     Spawning sub-processes
splittable_random       v0.12.0     PRNG that can be split into independent streams
stdio                   v0.12.0     Standard IO library for OCaml
time_now                v0.12.0     Reports the current time
topkg                   1.0.1       The transitory OCaml software packager
typerep                 v0.12.0     Typerep is a library for runtime types
uchar                   0.0.2       Compatibility library for OCaml's Uchar module
uucp                    12.0.0      Unicode character properties for OCaml
uuseg                   12.0.0      Unicode text segmentation for OCaml
uutf                    1.0.2       Non-blocking streaming Unicode codec for OCaml
variantslib             v0.12.0     Part of Jane Street's Core library

Fixed in 666c548.