<div dir="auto">Hi Grzegorz,<div dir="auto"><br></div><div dir="auto">How about flipping the script.</div><div dir="auto"><br></div><div dir="auto">I'm not releasing on FreeBSD, but Debian.</div><div dir="auto"><br></div><div dir="auto">What we do do is build a release of the app/project on the target version. The release includes Erlang. </div><div dir="auto"><br></div><div dir="auto">We then build a Deb which defines the dependencies for that build/release.</div><div dir="auto"><br></div><div dir="auto">In short, Erlang is not a dependency since it's built and included in the package. The dependancies used to build the release, which are standard packages on the target platform are dependencies of my Deb.</div><div dir="auto"><br></div><div dir="auto">Maybe that makes sense?</div><div dir="auto"><br></div><div dir="auto">Kind regards,</div><div dir="auto">Leonard</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Aug 4, 2020, 20:41 Grzegorz Junka <<a href="mailto:list1@gjunka.com">list1@gjunka.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Thanks Yao. I have a BSD-based system (FreeBSD) with just the base <br>
system installed. I can install additional packages but my aim is to be <br>
able to distribute the release to any similar system without having to <br>
install Erlang as a dependency on each one.<br>
<br>
GrzegorzJ<br>
<br>
<br>
On 05/08/2020 00:31, Yao Bao wrote:<br>
> Hello,<br>
><br>
> I am not sure whether running a single standalone program is feasible nowadays, but some points might be helpful to think about it.<br>
><br>
> 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.<br>
><br>
> The second one depends on what you already have with your machine.<br>
> - 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).<br>
> - 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.<br>
> - If the Erlang VM can be recognized as an application operating system, I think the BEAM might run Erlang applications directly.<br>
><br>
> Cheers,<br>
> Yao<br>
><br>
>> 在 2020年8月3日,07:12,Grzegorz Junka <<a href="mailto:list1@gjunka.com" target="_blank" rel="noreferrer">list1@gjunka.com</a>> 写道:<br>
>><br>
>> 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.<br>
>><br>
>> GrzegorzJ<br>
>><br>
><br>
</blockquote></div>