I was updating my Pleroma instance two days ago after upgrading to
OpenBSD 7.2.
Pleroma is written in Elixir, so I updated both Elixir/Erlang to
corresponding latest versions.
Then I rebuilt all the dependencies (before they were built with/for
Erlang-21).
When I tried to start Pleroma, it failed. The error was:
12:42:37.892 [notice] Application runtime_tools exited:
:runtime_tools.start(:normal, []) returned an error: shutdown: failed to start
child: :ttb_autostart
** (EXIT) an exception was raised:
** (UndefinedFunctionError) function
:observer_backend.ttb_resume_trace/0 is undefined (module :observer_backend is
not available)
(runtime_tools 1.19) :observer_backend.ttb_resume_trace()
(runtime_tools 1.19) ttb_autostart.erl:47: :ttb_autostart.init/1
(stdlib 4.0.1) gen_server.erl:848: :gen_server.init_it/2
(stdlib 4.0.1) gen_server.erl:811: :gen_server.init_it/6
(stdlib 4.0.1) proc_lib.erl:240: :proc_lib.init_p_do_apply/3
Then I found that, indeed, observer_backend.beam is missing from
/usr/local/lib/erlang25/lib/runtime_tools-1.19.
I then checked the ports tree to see what is in PLIST for lang/erlang.
The file is missing there too, but it is available in -wx subpackage.
So my question is, shouldn't observer_backend.beam (and hrl and erl in
respective directories too)
be included in -main subpackage too? I'm no expert in Erlang, but I know
that Observer is a graphical
tool (so it's OK for it to be in -wx subpackage). But the
observer_backend module doesn't contain
any graphics and can be used in non-graphical environment (such as in
Pleroma above).
---
best regards,
la-ninpre.