Erlang rr() returns missing_chunk -
newbie question on erlang using wings 3d shell (windows 7 pro, wings 3d 1.4.1). when write command read records definitons:
rr(wings).
i error:
{error,beam_lib, {missing_chunk,'d:/temp/erlang/lib/wings/ebin/wings.beam',"abst"}}
what doing wrong?
rr/1 "reads record definitions module's beam file. if there no record definitions in beam file, source file located , read instead."
my guess abstract form hasn't been included in .beam file , in installation source files not available.
update: digging shell:read_file_records/2
function, i've found following:
read_file_records(file, opts) -> case filename:extension(file) of ".beam" -> case beam_lib:chunks(file, [abstract_code,"cinf"]) of {ok,{_mod,[{abstract_code,{version,forms}},{"cinf",cb}]}} -> case record_attrs(forms) of [] when version =:= raw_abstract_v1 -> []; [] -> %% if version raw_x, test %% unnecessary. try_source(file, cb); records -> records end; {ok,{_mod,[{abstract_code,no_abstract_code},{"cinf",cb}]}} -> try_source(file, cb); error -> %% "abst" chunk missing (pre r6). error end; _ -> parse_file(file, opts) end.
it looks like, if "abst" chunk missing, doesn't try read source code. beam_lib:chunks(file, [abstract_code,"cinf"])
return you? erlang version running?
Comments
Post a Comment