Statifier create from dynamically linked executable and all it's libraries (and all LD_PRELOAD libraries, if any) one file.
Version: 1.6.15ELF statifier create from dynamically linked executables and all it's libraries one file. This file can be copied and run on another machine without need to drag all it's libraries.
Operating System: Linux
Dynamically linked executables are smaller then statically linked. From the other side dynamically linked executables use shared libraries compiled in PIC (position independend code) which is slower than "normal" one.
Files, created by statifier ("pseudo-static") combine disadvantages of both of them:
Huge - much bigger than statically linked
Still use PIC code
So, why one will use it ?
Ok, "pseudo-static" files have some advantages too:
Everything in one file - so distributing is simple
Same file can be used for computers with different libraries' versions
But all these one can got with usual static files.
So, why use statifier and huge "pseudo-static" executables instead of static ?
there is no source code available
there is no compiler (or build-chain) available
static link does not work or it's not obvious how do it
to preserve memory layout - static link will change it and may "wake-up" hidden bugs
for "permanent link" LD_PRELOAD library into executable