[erlang-questions] distel-mode with *.beam files separate from source

Paul Fisher pfisher@REDACTED
Fri May 23 13:30:23 CEST 2008


On Fri, 2008-05-23 at 10:55 +0200, Mats Cronqvist wrote:
> Paul Fisher wrote:
> >     top/
> >         bld/
> >             erlang/
> >                 application/
> >                     ebin/
> >                         *.app files
> >                         *.beam files
> >                     src/ -> top/project/application/
> >         project/
> >             application/
> >                 *.app files
> >                 *.erl files
> >
> > Basically, the idea is that project/* is under version control and then
> > the erlang applications are built into the top/bld/erlang/ directory
> > outside of version control in order to not pollute the project/*
> > structure with *.beam files, as well as aid in packaging.
> >
> > Problem is that even though the erlang node has
> > top/bld/erlang/application/ebin in the path, distel mode does not appear
> > to try ../src/ based on the module location reported by the node.
>   could be that the OTP filelib functions don't follow links.
>   are you using the GNU autotools to build out-of-tree?

Did a little digging and from the bottom distel:find_source/1 certainly
seems to find the source file (by the
path /top/project/application/source.erl) correctly, so maybe there is
something else going one unrelated to the source tree, or possibly
tangentially related.  Here is the actual error I get in the
*erl-output* buffer that is created when I toggle on interactive:

** Invalid beam file or no abstract code:
"/top/project/application/source.erl"

I cannot find (with simple grep searching for either "Invalid beam file"
or "no abstract code") where this message is generated in either the
lisp or the erlang code for distel. A pointer to the right place to look
would be greatly appreciated.


thanks,

-- 
paul




More information about the erlang-questions mailing list