[erlang-questions] Re: 'undef' while doing erl boot on release

Lukas Larsson <>
Fri Oct 8 16:44:10 CEST 2010


Hi,

You probably have an OS env set to point to your erlang installation and
not to your own release (the erl script does this by default if you look
into $PATH_TO_ERLANG_INSTALL/bin/erl). By setting OTP_TOP to $DIR/system
or LIB_DIRS to $DIR/system/lib before executing erl -boot it should
work.

See code path section of http://www.erlang.org/doc/man/code.html for
details on what these settings do and
http://www.erlang.org/doc/man/erl.html for details about which OS envs
effect the erlang VM.

Lukas

On Fri, 2010-10-08 at 16:22 +0200, Gleb Peregud wrote:
> On Fri, Oct 8, 2010 at 16:00, Gleb Peregud <> wrote:
> > Hi
> >
> > I have the following structure (which is created automatically by
> > scripts from dev environment):
> >
> > release/Vsn/App1/ebin/
> >                     /*.beam
> >                     /*.app
> >           /App2/ebin/
> >                     /*.beam
> >                     /*.app
> > release/Vsn/system.rel
> >
> > system.rel contains all appropriate version info about apps. Boot
> > script is done with systools:make_script/1 and release bundle is done
> > with systools:make_tar/1 (i.e. without erts inside). This gives me a
> > release bundle, which I copy to another place and extract.
> >
> > It gives me the following structure:
> >
> > $DIR/system/lib/App1/ebin/
> >                         /*.beam
> >                         /*.app
> >               /App2/ebin/
> >                         /*.beam
> >                         /*.app
> > $DIR/system/releases/system.rel
> >                    /Vsn/start.boot
> >
> > and if I do
> >
> > $ cd $DIR/system && erl -boot releases/Vsn/start.boot
> >
> > I get the following error:
> >
> > =CRASH REPORT==== 8-Oct-2010::15:46:26 ===
> >  crasher:
> >    initial call: application_master:init/4
> >    pid: <0.39.0>
> >    registered_name: []
> >    exception exit: {bad_return,
> >                        {{ibrowse_app,start,[normal,[]]},
> >                         {'EXIT',
> >                             {undef,
> >                                 [{ibrowse_app,start,[normal,[]]},
> >                                  {application_master,start_it_old,4}]}}}}
> >      in function  application_master:init/4
> >    ancestors: [<0.38.0>]
> >    messages: [{'EXIT',<0.40.0>,normal}]
> >    links: [<0.38.0>,<0.6.0>]
> >    dictionary: []
> >    trap_exit: true
> >    status: running
> >    heap_size: 377
> >    stack_size: 24
> >    reductions: 105
> >  neighbours:
> >
> >
> > If I do
> >
> > $ cd $DIR/system && erl -pa lib/*/ebin
> > Erlang R14B (erts-5.8.1) [source] [smp:2:2] [rq:2] [async-threads:0]
> > [hipe] [kernel-poll:false]
> >
> > Eshell V5.8.1  (abort with ^G)
> > 1> ibrowse_app:start(normal, []).
> > {ok,<0.33.0>}
> >
> >
> > Script file created previously by systools:make_script/1 does contain
> > appropriate primLoad commands, application:load/1 and
> > application:start_boot(ibrowse, permanent) commands. I've double
> > checked - ibrowse is not installed anywhere else on the system.
> >
> > I'm out of ideas why this could happen. Any thoughts on this?
> >
> > Best,
> > Gleb Peregud
> >
> 
> Just to add more info. Starting ibrowse from console works perfectly well:
> 
> $ cd $DIR/system && erl -pa lib/*/ebin
> Erlang R14B (erts-5.8.1) [source] [smp:2:2] [rq:2] [async-threads:0]
> [hipe] [kernel-poll:false]
> 
> Eshell V5.8.1  (abort with ^G)
> 1> application:start(sasl).
> ok
> 2>
> =PROGRESS REPORT==== 8-Oct-2010::16:21:27 ===
>           supervisor: {local,sasl_safe_sup}
>              started: [{pid,<0.38.0>},
>                        {name,alarm_handler},
>                        {mfargs,{alarm_handler,start_link,[]}},
>                        {restart_type,permanent},
>                        {shutdown,2000},
>                        {child_type,worker}]
> 
> =PROGRESS REPORT==== 8-Oct-2010::16:21:27 ===
>           supervisor: {local,sasl_safe_sup}
>              started: [{pid,<0.39.0>},
>                        {name,overload},
>                        {mfargs,{overload,start_link,[]}},
>                        {restart_type,permanent},
>                        {shutdown,2000},
>                        {child_type,worker}]
> 
> =PROGRESS REPORT==== 8-Oct-2010::16:21:27 ===
>           supervisor: {local,sasl_sup}
>              started: [{pid,<0.37.0>},
>                        {name,sasl_safe_sup},
>                        {mfargs,
>                            {supervisor,start_link,
>                                [{local,sasl_safe_sup},sasl,safe]}},
>                        {restart_type,permanent},
>                        {shutdown,infinity},
>                        {child_type,supervisor}]
> 
> =PROGRESS REPORT==== 8-Oct-2010::16:21:27 ===
>           supervisor: {local,sasl_sup}
>              started: [{pid,<0.40.0>},
>                        {name,release_handler},
>                        {mfargs,{release_handler,start_link,[]}},
>                        {restart_type,permanent},
>                        {shutdown,2000},
>                        {child_type,worker}]
> 
> =PROGRESS REPORT==== 8-Oct-2010::16:21:27 ===
>          application: sasl
>           started_at: 
> 2> application:start(ibrowse).
> 
> =PROGRESS REPORT==== 8-Oct-2010::16:21:30 ===
>           supervisor: {local,ibrowse_sup}
>              started: [{pid,<0.47.0>},
>                        {name,ibrowse},
>                        {mfargs,{ibrowse,start_link,[]}},
>                        {restart_type,permanent},
>                        {shutdown,2000},
>                        {child_type,worker}]
> 
> =PROGRESS REPORT==== 8-Oct-2010::16:21:30 ===
>          application: ibrowse
>           started_at: 
> ok
> 3>
> 
> ________________________________________________________________
> erlang-questions (at) erlang.org mailing list.
> See http://www.erlang.org/faq.html
> To unsubscribe; mailto:
> 



More information about the erlang-questions mailing list