[erlang-questions] Deploying on a server with different architecture and version of Erlang

Daniel Luna <>
Fri Dec 14 17:09:14 CET 2012


If this fixed your problem you have missing dependencies in your
.app.src file.  We always run {mod_cond, derived} here and it works
like a charm.

Until you miss to add a dependency in the .app.src file that is.

Cheers,

Daniel

On 14 December 2012 09:54, Vineet Naik <> wrote:
> IRC to the rescue! Changed mod_cond from derived to all
> and it solved the problem.
>
> Thanks a lot
> Vineet
>
>
> On Fri, Dec 14, 2012 at 7:11 PM, Vineet Naik <> wrote:
>>
>> Now I got past this error, it was a mistake from my side. I didn't create
>> the node on the server before running generate but copied files from my
>> dev machine. After creating node and with some tweaking to the reltool
>> config,
>> release is generated on the prod server but fails on startup with,
>>
>> {"init terminating in do_boot",{'cannot load',error_handler,get_file}}
>>
>> From erlang docs[1]
>>
>> "Init terminating in do_boot ()" - The primitive Erlang boot sequence was
>> terminated, most probably because the boot script has errors or cannot be
>> read. This is usually a configuration error - the system may have been
>> started with a faulty -boot parameter or with a boot script from the wrong
>> version of OTP.
>>
>> How can I check whether boot script running from the wrong version of OTP
>> is
>> the problem?
>>
>> [1]: http://www.erlang.org/doc/apps/erts/crash_dump.html#id71973
>>
>> Regards,
>> Vineet
>>
>> On Fri, Dec 14, 2012 at 4:05 PM, Vineet Naik <> wrote:
>>>
>>> Hello,
>>>
>>> Now that I have successfully built a release of my app using rebar, I am
>>> stuck at
>>> deploying the packaged release because the server I want to deploy to has
>>> different
>>> version of erlang and different architecture from my development machine.
>>>
>>> Development Env
>>> -------------------------
>>> i686 i686 i386 GNU/Linux
>>> Erlang R14B04
>>> erts-5.8.5
>>>
>>> Remote Server
>>> ----------------------
>>> x86_64 GNU/Linux
>>> Erlang R13B03
>>> erts-5.7.4
>>>
>>> I tried compiling on the server but it's failing with a series of errors
>>> such as
>>>
>>> ERROR: Unable to generate spec: Mandatory application kernel is not
>>> included in [{app,crypto,false,undefined,
>>>
>>> "/usr/lib/erlang/lib/crypto-1.6.3",
>>>
>>> ["/usr/lib/erlang/lib/crypto-1.6.3"],
>>>                                                   "1.6.3","crypto-1.6.3",
>>>                                                   .....
>>>
>>> I have two questions:
>>>
>>> 1. Is this due to the old version of erlang? And considering that I have
>>> ejabberd and rabbitmq-server running in production on the same server
>>> can I upgrade erlang to R14B04 on it without having to take them down for
>>> much
>>> time?
>>>
>>> 2. What is the recommended strategy for developing and deploying erlang
>>> code on
>>> differently configured servers?
>>>
>>> Thanks,
>>> Vineet
>>>
>>>
>>
>>
>>
>> --
>> Vineet Naik
>>
>>
>
>
>
> --
> Vineet Naik
>
>
>
> _______________________________________________
> erlang-questions mailing list
> 
> http://erlang.org/mailman/listinfo/erlang-questions
>



More information about the erlang-questions mailing list