$ printf 'int main(){}' | gcc -static -x c - -o hello
$ scp hello vi-server.org:./
hello 100% 565KB 565.2KB/s 00:00
$ ssh -t vi-server.org "./hello; uname -r"
FATAL: kernel too old
sh: line 1: 15378 Segmentation fault ./hello
2.6.18-274.... # can't easily upgrade the kernel
Connection to vi-server.org closed.
Come creare un binario statico che funzionerà su sistemi precedenti? Mi aspetto che i binari statici funzionino anche su 2.4.Come costruire un binario statico per installazioni GNU/Linux con vecchio kernel?
Nota: spesso è disponibile un'opzione per rendere binario "semi-statico". Si collegherà a libc in modo dinamico, ma ad altre librerie in modo statico (puoi scegliere quali librerie includere in binario e a cui collegarti). Può essere fatto modificando manualmente il comando di collegamento. –