Как исправить ошибку «Недопустимый файл луча или нет абстрактного кода» при отладке в Erlang / OTP? - PullRequest
2 голосов
/ 28 мая 2020

Я пытаюсь просто использовать отладчик, однако любой метод, указанный в документации, приводит к Monitor > Module > Interpret > *.beam возврату ошибки: ** Invalid beam file or no abstract code: "/path/z12.beam".

Методы генерации отладочной информации, которые я пробовал:

  1. Linux оболочка erlc +debug_info z12.erl

  2. оболочка Erlang > c(z12, [debug_info]).

  3. Непосредственно в file compile:file(z12, [debug_info]).

Однако ни один из них, похоже, не работает. Есть ли способ исправить это?

Ответы [ 2 ]

1 голос
/ 29 мая 2020

На самом деле вы легко загружаете модуль, используя саму оболочку erl, в которой был запущен отладчик.

c("erl_file_path",[debug_info]).
int:i("path/module_name"). 

пример:

12> c("/home/badri/hello.erl",[debug_info]). 
{ok,hello} 
15> int:i("/home/badri/hello"). 
{module,hello}
0 голосов
/ 28 мая 2020

Вместо выбора файла .beam попробуйте использовать файл .erl, это сработает.

...