Как статически связать программное обеспечение Linux, которое использует./configure?
Я хотел бы скомпилировать статический NRPE, чтобы я мог скопировать скомпилированный двоичный файл на сервер OmniOS, где я не хочу, чтобы на нем был установлен gcc. Я бы предпочел установить NRPE с поддержкой SSl из репозитория, но такого не существует, поэтому я хотел бы скомпилировать его сам. Тем не менее ./configure
скрипт не содержит статическую опцию
~/nrpe-2.15# ./configure --help | grep static
~/nrpe-2.15# ./configure --help | grep share
--datadir=DIR read-only architecture-independent data [PREFIX/share]
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
Вопрос
Как мне скомпилировать программу, которая использует configure
статически?
1 ответ
Для людей, приходящих из Google, я обнаружил, что если у вас есть libtool
часть вашей сборки, вам необходимо:
./configure CFLAGS="-static" ....
make LDFLAGS="-all-static"
Ты это видишь -all-static
с libtool --help --mode=link