frenetic-lang / frenetic

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

make && make install failed #654

Closed zfloat closed 1 year ago

zfloat commented 2 years ago

When I run the command “make && make install”, the error shown in the figure is displayed. This is a brand new ubuntu (v22.04) virtual machine with only git, opam (v2.1.2), mininet (v2.3.1b1), utop, ocaml (v4.13.1) installed in it. error Did i miss something

jnfoster commented 2 years ago

It looks like you are missing many OCaml libraries. Did you install OPAM and follow step 4 of the README?

zfloat commented 2 years ago

You're right, I'm also now trying to figure out how to top up the required dependencies. When I follow step 4, it prompts me that dune has removed the subcommand. error2

jnfoster commented 2 years ago

Oops. Okay, we'll have to update our documentation.

Two ways forward:

zfloat commented 2 years ago

thanks! It does help me a lot! The make process did start, but the run stopped with the following prompt. I have intercepted some important information and omitted the hint about ppx option. error-ppx1 error-ppx2 error-ppx3 I found that the option -allow-unannotated-ignores exists in ppx_js_style, so I tried to change the ppx_jane mentioned in the error to ppx_js_style. The make program did continue, but with more errors, which made me wonder if I shouldn't have done this.

Package ppx_jane is already installed (current version is v0.15.0).

In addition, I remembered that an error also occurred when opam pin.


zwx@zwx-virtual-machine:~/Desktop/frenetic$ opam pin .
[NOTE] Package frenetic is already pinned to
       git+file:///home/zwx/Desktop/frenetic#master (version 5.0.5).
frenetic is now pinned to git+file:///home/zwx/Desktop/frenetic#master (version 5.0.5)

The following actions will be performed:
  ∗ install frenetic 5.0.5*
Do you want to continue? [Y/n] y

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
⬇ retrieved frenetic.5.0.5  (no changes)
[ERROR] The compilation of frenetic.5.0.5 failed at "dune build -p frenetic -j
        3".

#=== ERROR while compiling frenetic.5.0.5 =====================================#
# context     2.1.2 | linux/x86_64 | ocaml.4.13.1 | pinned(git+file:///home/zwx/Desktop/frenetic#master#1713dc9e)
# path        ~/.opam/default/.opam-switch/build/frenetic.5.0.5
# command     ~/.opam/opam-init/hooks/sandbox.sh build dune build -p frenetic -j 3
# exit-code   1
# env-file    ~/.opam/log/frenetic-3410-6262f7.env
# output-file ~/.opam/log/frenetic-3410-6262f7.out
### output ###
# ppx.exe [extra_args] [<files>]
# [...]
#   -deriving-keep-w60 {impl|intf|both}
#                                    Do not try to disable warning 60 for the generated code
#   -dirname <dir>                   Name of the current directory relative to the root of the project
#   -inline-test-lib                 A base name to use for generated identifiers (has to be globally unique in a program).ppx_inline_test (and ppx_bench) are disabled unless this flag is passed.
#   -bench-drop                      Drop inline benchmarks
#   -bench-drop-with-deadcode        Drop inline benchmarks by wrapping them inside deadcode to prevent unused variable warnings.
#   -inline-test-drop                Drop unit tests
#   -inline-test-drop-with-deadcode  Drop unit tests by wrapping them inside deadcode to prevent unused variable warnings.
#   -log-source-position             If set, adds a "pos" tag with a source code position to every logged message.
#   -help                            Display this list of options
#   --help                           Display this list of options

<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
┌─ The following actions failed
│ λ build frenetic 5.0.5
└─ 
╶─ No changes have been performed
[NOTE] Pinning command successful, but your installed packages may be out of
       sync.
jnfoster commented 2 years ago

There seems to be a version mis-match. Can you try the opam pin . method with a different version of OCaml (specifically 4.12.0)?

zfloat commented 2 years ago

I deployed a new virtual machine and installed opam on it. Start the initialization and then switch the version of ocaml from 4.13.1 to 4.12.0. But I still can't install frenetic. The error message is as follows.

[ERROR] The compilation of frenetic.5.0.5 failed at "dune build -p frenetic -j
        3".

#=== ERROR while compiling frenetic.5.0.5 =====================================#
# context     2.1.2 | linux/x86_64 | ocaml-base-compiler.4.12.0 | pinned(git+file:///home/npl/Desktop/frenetic#master#1713dc9e)
# path        ~/.opam/4.12.0/.opam-switch/build/frenetic.5.0.5
# command     ~/.opam/opam-init/hooks/sandbox.sh build dune build -p frenetic -j 3
# exit-code   1
# env-file    ~/.opam/log/frenetic-31559-d0f927.env
# output-file ~/.opam/log/frenetic-31559-d0f927.out
### output ###
# ppx.exe [extra_args] [<files>]
# [...]
#   -deriving-keep-w60 {impl|intf|both}
#                                    Do not try to disable warning 60 for the generated code
#   -dirname <dir>                   Name of the current directory relative to the root of the project
#   -inline-test-lib                 A base name to use for generated identifiers (has to be globally unique in a program).ppx_inline_test (and ppx_bench) are disabled unless this flag is passed.
#   -bench-drop                      Drop inline benchmarks
#   -bench-drop-with-deadcode        Drop inline benchmarks by wrapping them inside deadcode to prevent unused variable warnings.
#   -inline-test-drop                Drop unit tests
#   -inline-test-drop-with-deadcode  Drop unit tests by wrapping them inside deadcode to prevent unused variable warnings.
#   -log-source-position             If set, adds a "pos" tag with a source code position to every logged message.
#   -help                            Display this list of options
#   --help                           Display this list of options

<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
┌─ The following actions failed
│ λ build frenetic 5.0.5
└─ 

The software and system versions I installed are as follows. ubuntu 22.04.1 LTS opam 2.1.2 ocaml 4.12.0 Do I still have a problem? I saw what was mentioned in this issue, could it be a problem with my opam version?

zfloat commented 2 years ago

I just tried to install with another ubuntu system, but the result is still the same.

[ERROR] The compilation of frenetic failed at "/home/npl/.opam/opam-init/hooks/sandbox.sh
        build dune build -p frenetic -j 3".

#=== ERROR while compiling frenetic.5.0.5 =====================================#
# context     2.0.5 | linux/x86_64 | ocaml-base-compiler.4.11.0 | pinned(git+file:///home/npl/Desktop/frenetic#master#1713dc9e)
# path        ~/.opam/4.11.0/.opam-switch/build/frenetic.5.0.5
# command     ~/.opam/opam-init/hooks/sandbox.sh build dune build -p frenetic -j 3
# exit-code   1
# env-file    ~/.opam/log/frenetic-21936-8fd456.env
# output-file ~/.opam/log/frenetic-21936-8fd456.out
### output ###
# ppx.exe [extra_args] [<files>]
# [...]
#   -deriving-keep-w60 {impl|intf|both}
#                                    Do not try to disable warning 60 for the generated code
#   -dirname <dir>                   Name of the current directory relative to the root of the project
#   -inline-test-lib                 A base name to use for generated identifiers (has to be globally unique in a program).ppx_inline_test (and ppx_bench) are disabled unless this flag is passed.
#   -bench-drop                      Drop inline benchmarks
#   -bench-drop-with-deadcode        Drop inline benchmarks by wrapping them inside deadcode to prevent unused variable warnings.
#   -inline-test-drop                Drop unit tests
#   -inline-test-drop-with-deadcode  Drop unit tests by wrapping them inside deadcode to prevent unused variable warnings.
#   -log-source-position             If set, adds a "pos" tag with a source code position to every logged message.
#   -help                            Display this list of options
#   --help                           Display this list of options

<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
┌─ The following actions failed
│ λ build frenetic 5.0.5
└─ 

Below is the environment I have installed. ubuntu 20.04 opam 2.0.5 ocaml 4.11.0 Could it be because the installation of frenetic is not supported on the virtual machine? Or is there something wrong with the version of dune?

Sorry to bother you so many times, and thank you very much for your help. I will continue to try the 4.12.0 version of ocaml to see if it can be successful.

ocaml 4.12.0 failed. :(

jnfoster commented 2 years ago

Can you provide the complete log and error message on 4.12.0, which apparently failed? It worked fine for me.

jnfoster commented 2 years ago

We don't distribute a VM with Frenetic on it. Sorry.

zfloat commented 2 years ago

The following is my complete process of installing a virtual machine and Frenetic.

  1. Use Vmware Workstations to install a virtual machine with an operating system of ubuntu 20.04.
  2. Switch the mirror source to improve the download speed of the installation package.
  3. apt-get update and apt-get upgrade
  4. sudo apt install opam The default installed version of OPAM is 2.0.5.
  5. opam init The default installed version of Ocaml is 4.08.1.
  6. opam switch create 4.12.0
  7. eval $(opam env)
  8. git clone https://github.com/frenetic-lang/frenetic.git
  9. cd frenetic/
  10. opam pin .

At this point, an error will appear, indicating that the installation of Frenetic 5.05 failed. The full error log is shown below. I cut it out completely, hoping it will make it easier for you to see. total

If I run make && make install command at this point, the make process terminates with an error.

That's all for my installation, and I'm looking forward to successfully installing Frenetic on my virtual machine. Also I really very much appreciate your guidance and help.

jnfoster commented 2 years ago

Very weird. Could you send the output-file too?

zfloat commented 2 years ago

output Are you talking about this file?

output-file.zip is the compressed package containing the source file, and frenetic-65236-d474c2.txt is the file I uploaded directly by modifying its suffix.

jnfoster commented 2 years ago

What does opam list ppx_js_style show? Mine is at version v.0.14.1

zfloat commented 2 years ago

I tried rerunning the opam pin . command after rolling back the version of ppx_js_style to v0.14.1. This time I successfully installed frenetic 5.0.5. But when I run make && make install command I got new error. new error

jnfoster commented 2 years ago

I believe I have fixed this. Can you pull and try again?

zfloat commented 1 year ago

Today, when I reinstalled Frenetic, the following problem occurred. 图片 I don't know why this problem arises. The following is the basic environment for my compilation. ubuntu 22.04.2LTS opam 2.1.2 ocaml 4.12.0

I'm sorry to bother you again, but I really need your help.

jnfoster commented 1 year ago

I was unable to replicate this. I just successfully built Frenetic on my machine with OCaml 4.12.0, OPAM 2.1.2.

[nate@jnf-cayuga:~> opam install frenetic
The following actions will be performed:
  ∗ install ocamlfind               1.9.6        [required by ppx_deriving]
  ∗ install seq                     base         [required by yojson]
  ∗ install ocamlbuild              0.14.2       [required by jsonm, uchar]
  ∗ install conf-pkg-config         2            [required by tcpip]
  ∗ install jbuilder                1.0+beta20.2 [required by open]
  ∗ install dune                    3.7.0        [required by frenetic]
  ∗ install num                     1.4          [required by sexplib]
  ∗ install base-bytes              base         [required by ocplib-endian]
  ∗ install uchar                   0.0.2        [required by sedlex]
  ∗ install topkg                   1.0.7        [required by jsonm]
  ∗ install open                    0.2.1        [required by frenetic]
  ∗ install stringext               1.6.0        [required by cohttp]
  ∗ install stdlib-shims            0.3.0        [required by ocamlgraph, ppx_cstruct]
  ∗ install spawn                   v0.15.1      [required by core]
  ∗ install sexplib0                v0.14.0      [required by cohttp, cohttp-async]
  ∗ install result                  1.5          [required by ppx_deriving]
  ∗ install re                      1.10.4       [required by cohttp, mparser-re]
  ∗ install psq                     0.2.1        [required by lru]
  ∗ install ppx_derivers            1.2.1        [required by ppx_deriving]
  ∗ install octavius                1.2.2        [required by ppx_js_style]
  ∗ install ocaml-syntax-shims      1.0.0        [required by angstrom]
  ∗ install ocaml-compiler-libs     v0.12.4      [required by ppxlib]
  ∗ install mparser                 1.3          [required by frenetic]
  ∗ install mirage-clock            4.2.0        [required by tcpip]
  ∗ install menhirSdk               20220210     [required by menhir]
  ∗ install menhirLib               20220210     [required by menhir]
  ∗ install magic-mime              1.3.0        [required by cohttp-async]
  ∗ install macaddr                 5.4.0        [required by tcpip]
  ∗ install lwt-dllist              1.0.1        [required by tcpip]
  ∗ install jane-street-headers     v0.14.0      [required by core_kernel]
  ∗ install gen                     1.1          [required by sedlex]
  ∗ install duration                0.2.1        [required by tcpip]
  ∗ install domain-name             0.4.0        [required by ipaddr]
  ∗ install csexp                   1.5.1        [required by dune-configurator]
  ∗ install cppo                    1.6.9        [required by ppx_deriving, yojson]
  ∗ install bigarray-compat         1.1.0        [required by cstruct]
  ∗ install base64                  3.5.1        [required by frenetic]
  ∗ install uutf                    1.0.3        [required by jsonm]
  ∗ install fmt                     0.9.0        [required by cohttp-async, tcpip]
  ∗ install astring                 0.8.5        [required by conduit]
  ∗ install ocamlgraph              2.0.0        [required by frenetic]
  ∗ install lru                     0.3.1        [required by tcpip]
  ∗ install ppxlib                  0.25.1       [required by ppx_deriving, ppx_cstruct, sedlex]
  ∗ install mparser-re              1.3          [required by frenetic]
  ∗ install menhir                  20220210     [required by frenetic]
  ∗ install ipaddr                  5.4.0        [required by frenetic]
  ∗ install dune-configurator       3.7.0        [required by base, bigstringaf]
  ∗ install yojson                  2.0.2        [required by frenetic]
  ∗ install ocplib-endian           1.2          [required by mirage-profile]
  ∗ install cstruct                 6.0.1        [required by frenetic]
  ∗ install jsonm                   1.0.2        [required by cohttp]
  ∗ install metrics                 0.4.0        [required by tcpip]
  ∗ install sedlex                  2.5          [required by frenetic]
  ∗ install ppx_pipebang            v0.14.0      [required by ppx_jane]
  ∗ install ppx_deriving            5.2.1        [required by frenetic]
  ∗ install bigstringaf             0.9.1        [required by angstrom]
  ∗ install base                    v0.14.3      [required by cohttp-async]
  ∗ install lwt                     5.6.1        [required by tcpip]
  ∗ install randomconv              0.1.3        [required by tcpip]
  ∗ install mirage-random           3.0.0        [required by tcpip]
  ∗ install macaddr-cstruct         5.4.0        [required by tcpip]
  ∗ install angstrom                0.15.0       [required by uri]
  ∗ install variantslib             v0.14.0      [required by core_kernel]
  ∗ install typerep                 v0.14.0      [required by core_kernel]
  ∗ install stdio                   v0.14.0      [required by core_kernel]
  ∗ install ppx_stable              v0.14.1      [required by ppx_jane]
  ∗ install ppx_sexp_conv           v0.14.3      [required by cohttp, cohttp-async]
  ∗ install ppx_optional            v0.14.0      [required by ppx_jane]
  ∗ install ppx_let                 v0.14.0      [required by ppx_jane]
  ∗ install ppx_js_style            v0.14.1      [required by ppx_base]
  ∗ install ppx_here                v0.14.0      [required by conduit-async]
  ∗ install ppx_fixed_literal       v0.14.0      [required by ppx_jane]
  ∗ install ppx_enumerate           v0.14.0      [required by ppx_base]
  ∗ install ppx_compare             v0.14.0      [required by ppx_base, bin_prot]
  ∗ install ppx_cold                v0.14.0      [required by ppx_base]
  ∗ install parsexp                 v0.14.2      [required by sexplib]
  ∗ install fieldslib               v0.14.0      [required by core_kernel]
  ∗ install mirage-time             3.0.0        [required by tcpip]
  ∗ install mirage-net              4.0.0        [required by tcpip]
  ∗ install mirage-flow             3.0.0        [required by mirage-protocols]
  ∗ install logs                    0.7.0        [required by cohttp-async, tcpip]
  ∗ install cstruct-lwt             6.0.1        [required by tcpip]
  ∗ install uri                     4.2.0        [required by cohttp, cohttp-async]
  ∗ install ppx_variants_conv       v0.14.2      [required by ppx_jane]
  ∗ install ppx_typerep_conv        v0.14.2      [required by ppx_jane]
  ∗ install ppx_optcomp             v0.14.3      [required by core_kernel]
  ∗ install ppx_custom_printf       v0.14.1      [required by ppx_jane]
  ∗ install ipaddr-sexp             5.4.0        [required by conduit-async]
  ∗ install ppx_sexp_value          v0.14.0      [required by ppx_jane]
  ∗ install ppx_sexp_message        v0.14.1      [required by core_kernel]
  ∗ install ppx_hash                v0.14.0      [required by core_kernel]
  ∗ install ppx_assert              v0.14.0      [required by core_kernel]
  ∗ install sexplib                 v0.14.0      [required by frenetic]
  ∗ install ppx_fields_conv         v0.14.2      [required by ppx_jane]
  ∗ install mirage-protocols        7.0.0        [required by tcpip]
  ∗ install uri-sexp                4.2.0        [required by cohttp, cohttp-async]
  ∗ install ppx_base                v0.14.0      [required by core_kernel]
  ∗ install jst-config              v0.14.1      [required by core_kernel, core]
  ∗ install ppx_cstruct             6.0.1        [required by frenetic]
  ∗ install cstruct-sexp            6.0.1        [required by frenetic]
  ∗ install conduit                 5.1.0        [required by conduit-async]
  ∗ install bin_prot                v0.14.1      [required by core_kernel]
  ∗ install mirage-stack            3.0.0        [required by tcpip]
  ∗ install cohttp                  4.0.0        [required by frenetic]
  ∗ install ppx_string              v0.14.1      [required by ppx_jane]
  ∗ install time_now                v0.14.0      [required by core_kernel]
  ∗ install mirage-profile          0.9.1        [required by tcpip]
  ∗ install ppx_bin_prot            v0.14.0      [required by ppx_jane]
  ∗ install ppx_module_timer        v0.14.0      [required by ppx_jane]
  ∗ install ppx_inline_test         v0.14.1      [required by core_kernel]
  ∗ install ethernet                2.2.1        [required by tcpip]
  ∗ install ppx_expect              v0.14.2      [required by ppx_jane]
  ∗ install ppx_bench               v0.14.1      [required by ppx_jane]
  ∗ install tcpip                   6.4.0        [required by frenetic]
  ∗ install splittable_random       v0.14.0      [required by core_kernel]
  ∗ install base_quickcheck         v0.14.1      [required by core_kernel]
  ∗ install ppx_jane                v0.14.0      [required by frenetic]
  ∗ install base_bigstring          v0.14.0      [required by core_kernel]
  ∗ install core_kernel             v0.14.2      [required by async]
  ∗ install timezone                v0.14.0      [required by core]
  ∗ install protocol_version_header v0.14.0      [required by async_rpc_kernel]
  ∗ install async_kernel            v0.14.0      [required by async, cohttp-async]
  ∗ install core                    v0.14.1      [required by frenetic]
  ∗ install async_rpc_kernel        v0.14.0      [required by async]
  ∗ install textutils               v0.14.0      [required by async]
  ∗ install async_unix              v0.14.0      [required by async, cohttp-async]
  ∗ install async                   v0.14.0      [required by frenetic]
  ∗ install conduit-async           5.1.0        [required by cohttp-async]
  ∗ install cohttp-async            4.0.0        [required by frenetic]
  ∗ install frenetic                5.0.5
===== ∗ 130 =====
Do you want to continue? [Y/n] y

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><>  🐫 
⬇ retrieved astring.0.8.5  (cached)
⬇ retrieved async.v0.14.0  (cached)
⬇ retrieved async_kernel.v0.14.0  (cached)
⬇ retrieved async_rpc_kernel.v0.14.0  (cached)
⬇ retrieved async_unix.v0.14.0  (cached)
⬇ retrieved angstrom.0.15.0  (cached)
⬇ retrieved base.v0.14.3  (cached)
⬇ retrieved base_bigstring.v0.14.0  (cached)
⬇ retrieved base_quickcheck.v0.14.1  (cached)
⬇ retrieved bigarray-compat.1.1.0  (cached)
⬇ retrieved bin_prot.v0.14.1  (cached)
⬇ retrieved base64.3.5.1  (https://opam.ocaml.org/cache)
⬇ retrieved bigstringaf.0.9.1  (https://opam.ocaml.org/cache)
⬇ retrieved conduit.5.1.0  (cached)
⬇ retrieved conduit-async.5.1.0  (cached)
⬇ retrieved core.v0.14.1  (cached)
∗ installed conf-pkg-config.2
⬇ retrieved cohttp.4.0.0  (https://opam.ocaml.org/cache)
⬇ retrieved core_kernel.v0.14.2  (cached)
⬇ retrieved cppo.1.6.9  (cached)
⬇ retrieved csexp.1.5.1  (cached)
⬇ retrieved cstruct.6.0.1  (cached)
⬇ retrieved cstruct-lwt.6.0.1  (cached)
⬇ retrieved cstruct-sexp.6.0.1  (cached)
⬇ retrieved domain-name.0.4.0  (cached)
⬇ retrieved cohttp-async.4.0.0  (https://opam.ocaml.org/cache)
⬇ retrieved duration.0.2.1  (https://opam.ocaml.org/cache)
⬇ retrieved ethernet.2.2.1  (cached)
⬇ retrieved fieldslib.v0.14.0  (cached)
⬇ retrieved fmt.0.9.0  (cached)
⬇ retrieved frenetic.5.0.5  (cached)
⬇ retrieved dune.3.7.0  (https://opam.ocaml.org/cache)
⬇ retrieved gen.1.1  (https://opam.ocaml.org/cache)
⬇ retrieved ipaddr.5.4.0  (https://opam.ocaml.org/cache)
⬇ retrieved ipaddr-sexp.5.4.0  (cached)
⬇ retrieved jane-street-headers.v0.14.0  (cached)
⬇ retrieved jbuilder.1.0+beta20.2  (cached)
⬇ retrieved jst-config.v0.14.1  (cached)
⬇ retrieved logs.0.7.0  (cached)
⬇ retrieved jsonm.1.0.2  (https://opam.ocaml.org/cache)
⬇ retrieved lwt.5.6.1  (cached)
⬇ retrieved lwt-dllist.1.0.1  (cached)
⬇ retrieved macaddr.5.4.0  (cached)
⬇ retrieved macaddr-cstruct.5.4.0  (cached)
⬇ retrieved dune-configurator.3.7.0  (https://opam.ocaml.org/cache)
⬇ retrieved magic-mime.1.3.0  (https://opam.ocaml.org/cache)
⬇ retrieved lru.0.3.1  (https://opam.ocaml.org/cache)
⬇ retrieved menhir.20220210  (cached)
⬇ retrieved menhirSdk.20220210  (cached)
⬇ retrieved metrics.0.4.0  (cached)
⬇ retrieved mirage-clock.4.2.0  (cached)
⬇ retrieved mirage-flow.3.0.0  (cached)
⬇ retrieved mirage-net.4.0.0  (cached)
⬇ retrieved mirage-profile.0.9.1  (cached)
⬇ retrieved mirage-protocols.7.0.0  (cached)
⬇ retrieved mirage-random.3.0.0  (cached)
⬇ retrieved mirage-stack.3.0.0  (cached)
⬇ retrieved mirage-time.3.0.0  (cached)
⬇ retrieved mparser.1.3  (cached)
⬇ retrieved mparser-re.1.3  (cached)
⬇ retrieved num.1.4  (cached)
⬇ retrieved ocaml-compiler-libs.v0.12.4  (cached)
⬇ retrieved ocaml-syntax-shims.1.0.0  (cached)
⬇ retrieved menhirLib.20220210  (cached)
⬇ retrieved ocamlbuild.0.14.2  (cached)
⬇ retrieved ocplib-endian.1.2  (cached)
⬇ retrieved ocamlgraph.2.0.0  (cached)
⬇ retrieved octavius.1.2.2  (cached)
⬇ retrieved open.0.2.1  (cached)
⬇ retrieved parsexp.v0.14.2  (cached)
⬇ retrieved ppx_assert.v0.14.0  (cached)
⬇ retrieved ppx_base.v0.14.0  (cached)
⬇ retrieved ppx_bench.v0.14.1  (cached)
⬇ retrieved ppx_bin_prot.v0.14.0  (cached)
⬇ retrieved ppx_cold.v0.14.0  (cached)
⬇ retrieved ppx_compare.v0.14.0  (cached)
⬇ retrieved ppx_custom_printf.v0.14.1  (cached)
⬇ retrieved ppx_cstruct.6.0.1  (cached)
⬇ retrieved ppx_derivers.1.2.1  (cached)
⬇ retrieved ppx_deriving.5.2.1  (cached)
⬇ retrieved ppx_enumerate.v0.14.0  (cached)
⬇ retrieved ppx_fields_conv.v0.14.2  (cached)
⬇ retrieved ppx_expect.v0.14.2  (cached)
⬇ retrieved ppx_fixed_literal.v0.14.0  (cached)
⬇ retrieved ppx_hash.v0.14.0  (cached)
⬇ retrieved ppx_here.v0.14.0  (cached)
⬇ retrieved ppx_inline_test.v0.14.1  (cached)
⬇ retrieved ppx_jane.v0.14.0  (cached)
⬇ retrieved ppx_js_style.v0.14.1  (cached)
⬇ retrieved ppx_let.v0.14.0  (cached)
⬇ retrieved ppx_module_timer.v0.14.0  (cached)
⬇ retrieved ppx_optcomp.v0.14.3  (cached)
⬇ retrieved ppx_optional.v0.14.0  (cached)
⬇ retrieved ppx_pipebang.v0.14.0  (cached)
⬇ retrieved ppx_sexp_conv.v0.14.3  (cached)
⬇ retrieved ppx_sexp_message.v0.14.1  (cached)
⬇ retrieved ppx_sexp_value.v0.14.0  (cached)
⬇ retrieved ppx_stable.v0.14.1  (cached)
⬇ retrieved ppx_string.v0.14.1  (cached)
⬇ retrieved ppx_typerep_conv.v0.14.2  (cached)
⬇ retrieved ppx_variants_conv.v0.14.2  (cached)
⬇ retrieved ocamlfind.1.9.6  (https://opam.ocaml.org/cache)
⬇ retrieved protocol_version_header.v0.14.0  (cached)
⬇ retrieved ppxlib.0.25.1  (cached)
⬇ retrieved randomconv.0.1.3  (cached)
⬇ retrieved result.1.5  (cached)
⬇ retrieved re.1.10.4  (cached)
∗ installed seq.base
⬇ retrieved sedlex.2.5  (cached)
⬇ retrieved sexplib.v0.14.0  (cached)
⬇ retrieved sexplib0.v0.14.0  (cached)
⬇ retrieved spawn.v0.15.1  (cached)
⬇ retrieved splittable_random.v0.14.0  (cached)
⬇ retrieved stdio.v0.14.0  (cached)
⬇ retrieved stdlib-shims.0.3.0  (cached)
⬇ retrieved stringext.1.6.0  (cached)
⬇ retrieved textutils.v0.14.0  (cached)
⬇ retrieved psq.0.2.1  (https://opam.ocaml.org/cache)
⬇ retrieved time_now.v0.14.0  (cached)
⬇ retrieved timezone.v0.14.0  (cached)
⬇ retrieved tcpip.6.4.0  (cached)
⬇ retrieved typerep.v0.14.0  (cached)
⬇ retrieved uchar.0.0.2  (cached)
⬇ retrieved uri.4.2.0  (cached)
⬇ retrieved uri-sexp.4.2.0  (cached)
⬇ retrieved uutf.1.0.3  (cached)
⬇ retrieved variantslib.v0.14.0  (cached)
⬇ retrieved yojson.2.0.2  (cached)
⬇ retrieved topkg.1.0.7  (https://opam.ocaml.org/cache)
∗ installed ocamlbuild.0.14.2
∗ installed jbuilder.1.0+beta20.2
∗ installed uchar.0.0.2
∗ installed open.0.2.1
∗ installed ocamlfind.1.9.6
∗ installed base-bytes.base
∗ installed num.1.4
∗ installed dune.3.7.0
∗ installed jane-street-headers.v0.14.0
∗ installed duration.0.2.1
∗ installed domain-name.0.4.0
∗ installed csexp.1.5.1
∗ installed bigarray-compat.1.1.0
∗ installed macaddr.5.4.0
∗ installed lwt-dllist.1.0.1
∗ installed gen.1.1
∗ installed menhirLib.20220210
∗ installed magic-mime.1.3.0
∗ installed cppo.1.6.9
∗ installed base64.3.5.1
∗ installed topkg.1.0.7
∗ installed cstruct.6.0.1
∗ installed mirage-clock.4.2.0
∗ installed ipaddr.5.4.0
∗ installed ocaml-syntax-shims.1.0.0
∗ installed macaddr-cstruct.5.4.0
∗ installed menhirSdk.20220210
∗ installed mparser.1.3
∗ installed ppx_derivers.1.2.1
∗ installed mirage-random.3.0.0
∗ installed ocplib-endian.1.2
∗ installed randomconv.0.1.3
∗ installed psq.0.2.1
∗ installed octavius.1.2.2
∗ installed fmt.0.9.0
∗ installed ocaml-compiler-libs.v0.12.4
∗ installed result.1.5
∗ installed lru.0.3.1
∗ installed stdlib-shims.0.3.0
∗ installed dune-configurator.3.7.0
∗ installed metrics.0.4.0
∗ installed spawn.v0.15.1
∗ installed sexplib0.v0.14.0
∗ installed stringext.1.6.0
∗ installed re.1.10.4
∗ installed astring.0.8.5
∗ installed uutf.1.0.3
∗ installed mparser-re.1.3
∗ installed bigstringaf.0.9.1
∗ installed yojson.2.0.2
∗ installed jsonm.1.0.2
∗ installed angstrom.0.15.0
∗ installed ocamlgraph.2.0.0
∗ installed uri.4.2.0
∗ installed lwt.5.6.1
∗ installed cstruct-lwt.6.0.1
∗ installed mirage-time.3.0.0
∗ installed mirage-net.4.0.0
∗ installed mirage-flow.3.0.0
∗ installed mirage-protocols.7.0.0
∗ installed mirage-stack.3.0.0
∗ installed logs.0.7.0
∗ installed base.v0.14.3
∗ installed fieldslib.v0.14.0
∗ installed variantslib.v0.14.0
∗ installed stdio.v0.14.0
∗ installed typerep.v0.14.0
∗ installed parsexp.v0.14.2
∗ installed sexplib.v0.14.0
∗ installed menhir.20220210
∗ installed cstruct-sexp.6.0.1
∗ installed ppxlib.0.25.1
∗ installed ppx_cold.v0.14.0
∗ installed ppx_here.v0.14.0
∗ installed ppx_compare.v0.14.0
∗ installed ppx_enumerate.v0.14.0
∗ installed ppx_let.v0.14.0
∗ installed ppx_fields_conv.v0.14.2
∗ installed ppx_optcomp.v0.14.3
∗ installed ppx_cstruct.6.0.1
∗ installed ppx_fixed_literal.v0.14.0
∗ installed ppx_js_style.v0.14.1
∗ installed ppx_pipebang.v0.14.0
∗ installed ppx_optional.v0.14.0
∗ installed ppx_stable.v0.14.1
∗ installed ppx_deriving.5.2.1
∗ installed ppx_typerep_conv.v0.14.2
∗ installed ppx_variants_conv.v0.14.2
∗ installed sedlex.2.5
∗ installed mirage-profile.0.9.1
∗ installed ppx_sexp_conv.v0.14.3
∗ installed ppx_sexp_message.v0.14.1
∗ installed ppx_sexp_value.v0.14.0
∗ installed ethernet.2.2.1
∗ installed ppx_custom_printf.v0.14.1
∗ installed uri-sexp.4.2.0
∗ installed ipaddr-sexp.5.4.0
∗ installed ppx_assert.v0.14.0
∗ installed ppx_hash.v0.14.0
∗ installed ppx_base.v0.14.0
∗ installed conduit.5.1.0
∗ installed ppx_string.v0.14.1
∗ installed cohttp.4.0.0
∗ installed jst-config.v0.14.1
∗ installed tcpip.6.4.0
∗ installed time_now.v0.14.0
∗ installed ppx_inline_test.v0.14.1
∗ installed bin_prot.v0.14.1
∗ installed ppx_bench.v0.14.1
∗ installed ppx_expect.v0.14.2
∗ installed ppx_bin_prot.v0.14.0
∗ installed ppx_module_timer.v0.14.0
∗ installed splittable_random.v0.14.0
∗ installed base_quickcheck.v0.14.1
∗ installed ppx_jane.v0.14.0
∗ installed base_bigstring.v0.14.0
∗ installed core_kernel.v0.14.2
∗ installed protocol_version_header.v0.14.0
∗ installed timezone.v0.14.0
∗ installed async_kernel.v0.14.0
∗ installed async_rpc_kernel.v0.14.0
∗ installed core.v0.14.1
∗ installed textutils.v0.14.0
∗ installed async_unix.v0.14.0
∗ installed async.v0.14.0
∗ installed conduit-async.5.1.0
∗ installed cohttp-async.4.0.0
∗ installed frenetic.5.0.5
Done.
# Run eval $(opam env) to update the current shell environment

[nate@jnf-cayuga:~> 
[nate@jnf-cayuga:~> frenetic
Invokes the specified Frenetic module.

  frenetic SUBCOMMAND

=== subcommands ===

  compile-server       Invokes compile server.
  dump                 Runs (local/global/virtual) compiler and dumps resulting
                       tables.
  fault-tolerant       Invokes fault-tolerant openflow 1.3 controler.
  http-controller      Invokes http controler.
  openflow13           Invokes openflow 1.3 controler.
  portless-controller  Starts a controller with specified topology and installed
                       rules generated from portless policy.
  shell                Invokes frenetic shell.
  version              print version information
  help                 explain a given subcommand (perhaps recursively)

missing subcommand for command frenetic
jnfoster commented 1 year ago

If you don't have other OCaml packages, you could try blasting away your "switch" and creating it again from scratch?

opam update
opam switch remove 4.12.0
opam switch create 4.12.0
opam install frenetic
zfloat commented 1 year ago

According to your method, I successfully installed frenetic again, which is much more convenient than the previous installation method.

Very curious about why make & make install failed, but let's leave this issue alone.

Thank you so much!

jnfoster commented 1 year ago

I'm not sure either. I was just able to successfully build from source using the current master. It's possibly you had the wrong version of the cstruct library, and resetting your OPAM fixed that.

Anyway, I'm glad it's working for you now. I'll close the issue.