News for hackers. Stuff that matters.
Re:Languages on BEAM, the Erlang virtual machine by gamache on Friday January 20, 2017 @04:48PM (#13447234)
You're not recompiling the VM, you're just including a copy of it in the release tarball, so that you can copy the tarball to any machine with the same architecture and run it regardless of whether Erlang or Elixir is installed globally on the machine.

The goal of a release is to bundle together everything you need -- your program, the VM that runs it, your config files, and any instructions necessary to upgrade/downgrade from another version of your code.

Re:Languages on BEAM, the Erlang virtual machine by xxxx00998978 on Friday January 20, 2017 @05:04PM (#13447344)
He means why not just include the apropiate vm as a binary for any given arch.
Re:Languages on BEAM, the Erlang virtual machine by chrisseaton on Friday January 20, 2017 @04:52PM (#13447270)
But why build the VM for every release then? What is it that needs to be cross compiled if you're just copying a VM build into a tarball? Why not copy an existing build of it in?
Re:Languages on BEAM, the Erlang virtual machine by gamache on Friday January 20, 2017 @04:54PM (#13447283)
The VM is not built for every release, it is copied into the release. The fact that it isn't built for each release is why cross-compilation of releases is not possible.
Re:Languages on BEAM, the Erlang virtual machine by chrisseaton on Friday January 20, 2017 @05:00PM (#13447324)
I must be an idiot because I still don't get it. If the VM is just copied into the release, not built, why can't you do that on macOS for deployment on Linux by copying a Linux version in? Why do you need to do it in a VM or Linux build server?
Re:Languages on BEAM, the Erlang virtual machine by gamache on Friday January 20, 2017 @05:03PM (#13447338)
It's probably only that no one's written the tooling for that yet, because it's easy enough to set up a Linux VM or build server.
Re:Languages on BEAM, the Erlang virtual machine by kungfooguru on Friday January 20, 2017 @07:18PM (#13448029)
The tools (relx, exrm) can do that.