Cuttlefish Compiling Woes

Hey guys,

I’ve posted this on the Riak Core mailing list, too, but it seems no one can reproduce my issue, so I thought I might get better luck, here.

I’m using Ubuntu and I’ve been trying to compile riak_core_ng into a new project. I’ve tried combinations of Erlang 19 / Elixir 1.4.2 and Erlang 18.3 / Elixir 1.3.4, with versions 3.0.2 and 2.8.8 of riak_core_ng respectively.

When I compile, I get the output:

===> 19.2.3 satisfies the requirement for minimum OTP version R16
===> Expanded command sequence to be run: []
===> Expanded command sequence to be run: [{default,app_discovery},
                                           {bare,compile}]
===> 19.2.3 satisfies the requirement for minimum OTP version R16
===> Compiling cuttlefish
===> run_hooks("/home/lee/Documents/file_server/deps/cuttlefish", pre_hooks, compile) -> no hooks defined

===> run_hooks("/home/lee/Documents/file_server/deps/cuttlefish", pre_hooks, erlc_compile) -> no hooks defined

===> erlopts [debug_info,debug_info,
              {parse_transform,lager_transform},
              warn_untyped_record,warnings_as_errors]
===> files to compile ["/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_generator.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_conf.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_vmargs.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/conf_parse.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_escript.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_rebar_plugin.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_bytesize.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_duration.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_duration_parse.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/lager_stderr_backend.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_flag.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_util.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_effective.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_advanced.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_datatypes.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_enum.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_schema.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_variable.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_translation.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_unit.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_validator.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_error.erl",
                       "/home/lee/Documents/file_server/deps/cuttlefish/src/cuttlefish_mapping.erl"]
===> run_hooks("/home/lee/Documents/file_server/deps/cuttlefish", post_hooks, erlc_compile) -> no hooks defined

===> run_hooks("/home/lee/Documents/file_server/deps/cuttlefish", pre_hooks, app_compile) -> no hooks defined

===> run_hooks("/home/lee/Documents/file_server/deps/cuttlefish", post_hooks, app_compile) -> no hooks defined

===> run_hooks("/home/lee/Documents/file_server/deps/cuttlefish", pre_hooks, escriptize) -> no hooks defined

===> run_hooks("/home/lee/Documents/file_server/deps/cuttlefish", pre_hooks, escriptize) -> no hooks defined

===> Building escript...
===> Creating escript file /home/lee/Documents/file_server/deps/cuttlefish/_build/default/bin/cuttlefish
===> processing <<"cuttlefish">>
===> new deps of <<"cuttlefish">> found to be []
===> processing <<"getopt">>
===> Uncaught error in rebar_core. Run with DEBUG=1 to see stacktrace or consult rebar3.crashdump
===> Uncaught error: {badmatch,error}
===> Stack trace to the error location:
[{rebar_prv_escriptize,find_deps_of_deps,3,
                       [{file,"/home/tristan/Devel/rebar3/_build/default/lib/rebar/src/rebar_prv_escriptize.erl"},
                        {line,240}]},
 {rebar_prv_escriptize,find_deps,2,
                       [{file,"/home/tristan/Devel/rebar3/_build/default/lib/rebar/src/rebar_prv_escriptize.erl"},
                        {line,234}]},
 {rebar_prv_escriptize,escriptize,2,
                       [{file,"/home/tristan/Devel/rebar3/_build/default/lib/rebar/src/rebar_prv_escriptize.erl"},
                        {line,104}]},
 {rebar_prv_escriptize,do,1,
                       [{file,"/home/tristan/Devel/rebar3/_build/default/lib/rebar/src/rebar_prv_escriptize.erl"},
                        {line,80}]},
 {rebar_core,do,2,
             [{file,"/home/tristan/Devel/rebar3/_build/default/lib/rebar/src/rebar_core.erl"},
              {line,125}]},
 {rebar_hooks,run_provider_hooks_,6,
              [{file,"/home/tristan/Devel/rebar3/_build/default/lib/rebar/src/rebar_hooks.erl"},
               {line,49}]},
 {rebar_hooks,run_all_hooks,6,
              [{file,"/home/tristan/Devel/rebar3/_build/default/lib/rebar/src/rebar_hooks.erl"},
               {line,16}]},
 {rebar_prv_compile,compile,3,
                    [{file,"/home/tristan/Devel/rebar3/_build/default/lib/rebar/src/rebar_prv_compile.erl"},
                     {line,129}]}]
===> When submitting a bug report, please include the output of `rebar3 report "your command"`
** (Mix) Could not compile dependency :cuttlefish, "/home/lee/.mix/rebar3 bare compile --paths "/home/lee/Documents/file_server/_build/dev/lib/*/ebin"" command failed. You can recompile this dependency with "mix deps.compile cuttlefish", update it with "mix deps.update cuttlefish" or clean it with "mix deps.clean cuttlefish"

No matter what I try, Cuttlefish just will not compile. Can anyone help me with where to look as to why this fails on my machine?

Thanks,
Lee

2 Likes

Thoughts anyone?

1 Like

I get precisely the same error, so I think their build is borked, you should submit an issue on their github. :slight_smile:

1 Like

Thanks, I’ll do that

1 Like