On Thu, Mar 24, 2022 at 10:12:39AM +0100, Laszlo Ersek wrote:
On 03/23/22 16:39, Richard W.M. Jones wrote:
> ... is about 5MB stripped, which is not terrible, but also not great.
Why does its size matter?
Containers :-(
The truth is it doesn't really matter, but I was interested because
this topic (specifically golang vs rust binaries) came up during a
meeting and I wondered how OCaml was doing.
OCaml links a runtime (GC etc) into binaries which makes the minimum
size of an empty program quite large (320K). Recent versions of OCaml
can dynamically link the runtime, but we disable this in Fedora/RHEL
because there isn't a stable ABI between the generated native code and
the runtime, and with dynamic linking you could get problems with
mixing binaries and runtime causing weird crashes. So the static
linked runtime is unavoidable.
But it seems worth at least looking if there are easy wins.
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming and virtualization blog:
http://rwmj.wordpress.com
virt-p2v converts physical machines to virtual machines. Boot with a
live CD or over the network (PXE) and turn machines into KVM guests.
http://libguestfs.org/virt-v2v