Wed Aug 5 02:41:01 CEST 2020
Thanks Yao. I have a BSD-based system (FreeBSD) with just the base
system installed. I can install additional packages but my aim is to be
able to distribute the release to any similar system without having to
install Erlang as a dependency on each one.
On 05/08/2020 00:31, Yao Bao wrote:
> I am not sure whether running a single standalone program is feasible nowadays, but some points might be helpful to think about it.
> The first one comes from the Appendix 3 (A Simple Execution Environment) from joe's book 'Programming Erlang, Second Edition', but this does not answer the 'linking statically' question.
> The second one depends on what you already have with your machine.
> - If you have an Unix-like operating system as the basis, which means you have an usable kernel at hand, you need to build the standalone program into a format which the kernel can understand and can run it directly (without dynamic linking libraries).
> - If you do not have an operating system as the basis, you have to build the standalone program into a format which the machine can understand directly, in this case, machine code.
> - If the Erlang VM can be recognized as an application operating system, I think the BEAM might run Erlang applications directly.
>> 在 2020年8月3日，07:12，Grzegorz Junka <list1@REDACTED> 写道：
>> Is it possible to compile Erlang Beam statically so that when I am doing a release it doesn't require any dynamically loaded libraries on the host to which the release is being deployed? I was trying the various configure options but the compilation was failing (for various reasons, mostly missing or conflicting function signatures). I could try again and post exact errors but would prefer to start with a tried and tested set of options.
More information about the erlang-questions