Mix MatchError on compile

mix compile or iex -S mix on a new mix project produces the following error:

Compiling 1 file (.ex)
** (MatchError) no match of right hand side value: {:error, {{:EXIT, {:function_clause, [{:disk_log_sup, :start_link, , [file: ‘disk_log_sup.erl’, line: 26]}, {:supervisor, :do_start_child_i, 3, [file: ‘supervisor.erl’, line: 414]}, {:supervisor, :do_start_child, 2, [file: ‘supervisor.erl’, line: 400]}, {:supervisor, :handle_start_child, 2, [file: ‘supervisor.erl’, line: 706]}, {:supervisor, :handle_call, 3, [file: ‘supervisor.erl’, line: 455]}, {:gen_server, :try_handle_call, 4, [file: ‘gen_server.erl’, line: 1149]}, {:gen_server, :handle_msg, 6, [file: ‘gen_server.erl’, line: 1178]}, {:proc_lib, :init_p_do_apply, 3, [file: ‘proc_lib.erl’, line: 240]}]}}, {:child, :undefined, :disk_log_sup, {:disk_log_sup, :start_link, }, :permanent, false, 1000, :supervisor, [:disk_log_sup]}}}
(kernel 8.5.4) disk_log_server.erl:142: :disk_log_server.ensure_started/0
(kernel 8.5.4) disk_log_server.erl:52: :disk_log_server.open/1
(stdlib 4.3) ets.erl:815: :ets.tab2file/3
(mix 1.14.4) lib/mix/compilers/application_tracer.ex:250: Mix.Compilers.ApplicationTracer.write_manifest/1
(mix 1.14.4) lib/mix/compilers/application_tracer.ex:41: Mix.Compilers.ApplicationTracer.prepare/2
(mix 1.14.4) lib/mix/compilers/elixir.ex:150: Mix.Compilers.Elixir.compile/7
(mix 1.14.4) lib/mix/state.ex:15: Mix.State.lock/2
(mix 1.14.4) lib/mix/task.ex:421: anonymous fn/3 in Mix.Task.run_task/4

Macbook M1

There was a similar thread not that long ago, perhaps try reinstalling Elixir/Erlang from a different source?

2 Likes