Pokud nemůžete zkompilovat statickou binárku, měl jsem dobré výsledky pomocí Statifier.
Většina autoconf
vygenerováno configure
skript vám umožní vytvořit statické sestavení:
./configure --enable-static
make
Pokud to nefunguje, možná budete moci předat příznaky linkeru pomocí LDFLAGS
, takto:
./configure LDFLAGS=-static
Předpokládám, že ke kompilaci řady c programů používá gcc, i když se budete muset podívat do souboru Makefile, abyste to zjistili.
Pokud ano, můžete upravit řádky gcc v makefile tak, aby prováděly statické propojení, i když v závislosti na struktuře programu to může být složitá změna. Podívejte se na man gcc, abyste viděli, jak se to dělá.
Zajímalo by mě, proč staticky propojujete. Uvažovali jste o použití předběžného propojení?
Měli byste si být vědomi toho, že pokud všechny komponenty nejsou GPL, mohou nastat problémy s licencí.
Jo, musíte upravit soubor make a přidat parametr -static do gcc během odkazu.