frenetic-lang / frenetic

The Frenetic Programming Language and Runtime System
http://www.frenetic-lang.org/
Other
223 stars 51 forks source link

Issue with sedlex when attempting opam install #590

Closed andresm-m closed 6 years ago

andresm-m commented 6 years ago

Hello,

I am trying to install Frenetic on an Ubuntu VM. I seem to be having an issue with sedlex. It does not exist at "/usr/local/lib/ocaml/../sedlex" or "/usr/local/lib/ocaml/sedlex." Sedlex is install under: /home/ubuntu/.opam/system/lib/sedlex

Any ideas about how to tell opam to look in the right place?

Thank you!

ubuntu:~$ opam install frenetic

=-=- Synchronising pinned packages =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= [frenetic] /home/ubuntu/src/frenetic already up-to-date The following actions will be performed: ∗ install frenetic 4.2.0*

=-=- Gathering sources =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= [frenetic] /home/ubuntu/src/frenetic already up-to-date

=-=- Processing actions -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= [ERROR] The compilation of frenetic failed at "jbuilder build -p frenetic -j 4".

=== ERROR while installing frenetic.4.2.0 ====================================

opam-version 1.2.2

os linux

command jbuilder build -p frenetic -j 4

path /home/ubuntu/.opam/system/build/frenetic.4.2.0

compiler system (4.06.0)

exit-code 1

env-file /home/ubuntu/.opam/system/build/frenetic.4.2.0/frenetic-11448-d2d111.env

stdout-file /home/ubuntu/.opam/system/build/frenetic.4.2.0/frenetic-11448-d2d111.out

stderr-file /home/ubuntu/.opam/system/build/frenetic.4.2.0/frenetic-11448-d2d111.err

stderr

# File unavailable: /usr/local/lib/ocaml/../sedlex/ppx_sedlex

=-=- Error report -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= The following actions failed ∗ install frenetic 4.2.0 No changes have been performed

ubuntu$ opam info sedlex package: sedlex version: 1.99.4 repository: default upstream-url: https://github.com/alainfrisch/sedlex/archive/v1.99.4.tar.gz upstream-kind: http upstream-checksum: f621d80e36cda2548528766f31b16b12 homepage: https://github.com/alainfrisch/sedlex bug-reports: https://github.com/alainfrisch/sedlex/issues dev-repo: https://github.com/alainfrisch/sedlex.git author: Alain Frisch alain.frisch@lexifi.com license: MIT depends: ocamlfind & ppx_tools_versioned & ocaml-migrate-parsetree & gen installed-version: 1.99.4 [system] available-versions: 1.99, 1.99.1, 1.99.2, 1.99.3, 1.99.4 description: unicode-friendly lexer generator

sedlex is a lexer generator for OCaml, similar to ocamllex, but supporting Unicode. Contrary to ocamllex, lexer specifications for sedlex are embedded in regular OCaml source files.

smolkaj commented 6 years ago

As a temporary workaround, the following should work:

opam update
opam switch 4.05.0          # this will install OCaml 4.05.0 and may take a while
eval `opam config env`      # update environment variables
cd <frenetic-directory>
opam pin add frenetic . -y

(The deeper issue is that we are currently using a brittle hack to make sedlex work with jbuilder. The hack won't be necessary once sedlex has been updated, see https://github.com/alainfrisch/sedlex/issues/46)

andresm-m commented 6 years ago

Thank you, Steffen,

That worked nicely.

Cheers, Andres

smolkaj commented 6 years ago

Great! I'm also about to merge a pull request (#591) which will make the workaround unnecessary.