Skip to content

can't build evercddl on macos (Docker or native) #213

@rohanmahy

Description

@rohanmahy

I tried a clean install on macOS 15.5 both natively and via Docker. FStar is clearly not getting installed correctly in either case.

Docker

I ran:

% git clone git@github.com:project-everest/everparse.git
% cd everparse
% docker build -t evercddl .

Step 8 fails:

 => ERROR [8/8] RUN sudo apt-get update && . "/home/opam/.cargo/env" && e  1.1s
------                                                                          
 > [8/8] RUN sudo apt-get update && . "/home/opam/.cargo/env" && env OPAMYES=1 make _opam && eval $(opam env) && make -j 24 -C opt && env OTHERFLAGS='--admit_smt_queries true' make -j 24 cbor-test cddl-test cose-test:                       
0.423 Hit:1 http://ports.ubuntu.com/ubuntu-ports noble InRelease                
0.463 Get:2 http://ports.ubuntu.com/ubuntu-ports noble-updates InRelease [126 kB]
0.609 Hit:3 http://ports.ubuntu.com/ubuntu-ports noble-backports InRelease
0.657 Hit:4 http://ports.ubuntu.com/ubuntu-ports noble-security InRelease
0.679 Fetched 126 kB in 1s (218 kB/s)
0.679 Reading package lists...
1.039 make: '_opam' is up to date.
1.045 make: Entering directory '/mnt/everparse/opt'
1.045 make -C FStar ADMIT=1
1.045 make[1]: Entering directory '/mnt/everparse/opt/FStar'
1.048   EXTRACT          STAGE 1 FSTARC-BARE
1.049 make[2]: Entering directory '/mnt/everparse/opt/FStar'
1.059 make[2]: *** No rule to make target '/Users/rohan/src/ietf/project-everest/everparse/opt/FStar/stage0/out/lib/fstar/ulib/FStar.Pervasives.fst', needed by '/Users/rohan/src/ietf/project-everest/everparse/opt/FStar/stage1/fstarc.checked/FStar.Pervasives.fst.checked.lax'.  Stop.
1.059 make[2]: Leaving directory '/mnt/everparse/opt/FStar'
1.059 make[1]: Leaving directory '/mnt/everparse/opt/FStar'
1.059 make[1]: *** [Makefile:92: .bare1.src.touch] Error 2
1.059 make: *** [Makefile:31: FStar.do] Error 2
1.059 make: Leaving directory '/mnt/everparse/opt'
------
Dockerfile:27
--------------------
  25 |     # Build and publish the release
  26 |     ARG CI_THREADS=24
  27 | >>> RUN sudo apt-get update && . "$HOME/.cargo/env" && env OPAMYES=1 make _opam && eval $(opam env) && make -j $CI_THREADS -C opt && env OTHERFLAGS='--admit_smt_queries true' make -j $CI_THREADS cbor-test cddl-test cose-test
  28 |     
  29 |     ENTRYPOINT ["/mnt/everparse/opt/shell.sh", "--login", "-c"]
--------------------
ERROR: failed to solve: process "/bin/sh -c sudo apt-get update && . \"$HOME/.cargo/env\" && env OPAMYES=1 make _opam && eval $(opam env) && make -j $CI_THREADS -C opt && env OTHERFLAGS='--admit_smt_queries true' make -j $CI_THREADS cbor-test cddl-test cose-test" did not complete successfully: exit code: 2

Natively

I ran:

% git clone git@github.com:project-everest/everparse.git
% cd everparse
% rustup component add rustfmt && cargo install bindgen-cli
% brew install opam bash gnu-getopt make
% ./build-evercddl.sh

I error out here:

+ make _opam
/Users/rohan/src/ietf/project-everest/everparse/src/common.Makefile:77: .depend: No such file or directory
true                                                                                                                                                                                                                                                                                                                                                      
/Users/rohan/src/ietf/project-everest/everparse/opt/FStar/out/bin/fstar.exe    --include /Users/rohan/src/ietf/project-everest/everparse/opt/karamel/krmllib --include /Users/rohan/src/ietf/project-everest/everparse/opt/karamel/krmllib/obj --include /Users/rohan/src/ietf/project-everest/everparse/opt/pulse/out/lib/pulse --include src/lowparse --include src/ASN1 --include src/3d/prelude --include src/cbor/spec --include src/cbor/spec/raw --include src/cbor/spec/raw/everparse --include src/cddl/spec --include src/lowparse/pulse --include src/cbor/pulse --include src/cbor/pulse/raw --include src/cbor/pulse/raw/everparse --include src/cddl/pulse --include src/cddl/tool --include . --cache_checked_modules --warn_error @241 --already_cached PulseCore,Pulse,C,LowStar,*,-LowParse,-EverParse3d,-ASN1,-CBOR,-CDDL,Prims,FStar,LowStar --cmi --ext context_pruning  --dep full @.depend.rsp --output_deps_to .depend.aux
* Warning 152:
  - Not a valid include directory:
      /Users/rohan/src/ietf/project-everest/everparse/opt/karamel/krmllib/obj

* Warning 152:
  - Not a valid include directory:
      /Users/rohan/src/ietf/project-everest/everparse/opt/pulse/out/lib/pulse

* Error 168 at src/lowparse/pulse/LowParse.Pulse.Base.fst(2,11-2,11):
  - Unknown language extension pulse

1 error was reported (see above)
make: *** [.depend] Error 1

/Users/rohan/src/ietf/project-everest/everparse/opt/karamel/krmllib/ does not contain an obj directory and /Users/rohan/src/ietf/project-everest/everparse/opt/pulse/ does not contain an out directory.

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