Связывание libs в двоичный файл для того, чтобы сделать его статичным в большинстве сред Linux - PullRequest
0 голосов
/ 01 февраля 2019

В настоящее время я ищу способ сделать двоичный файл, который я только что скомпилировал, переносимым двоичным файлом для большей части среды Linux.Я рассматривал Ermine, но это не бесплатно (сейчас я ищу бесплатное решение) и пробовал также со Statifier, но тоже не работал.Вот подробности о бинарном файле, который я пытаюсь сделать статическим и переносимым:

sirius@blackb0x:~/MINING/ARIONUM/ariominer/build$ ldd /home/sirius/MINING/ARIONUM/ariominer/build/ariominer
    linux-vdso.so.1 =>  (0x00007fff692fe000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fdfee979000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fdfee775000)
    libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fdfee45f000)
    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fdfee159000)
    libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fdfedf42000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fdfedb79000)
    /lib64/ld-linux-x86-64.so.2 (0x00007fdfeeb97000)

Если бы кто-нибудь мог сказать мне, как именно связать все библиотеки с двоичным файлом, чтобы он мог легко работать на всех или почти на всехLinux Env ​​(ядра 2.6.18 до последней версии) будет очень признателен.

Спасибо

1 Ответ

0 голосов
/ 06 марта 2019

Перестройте программу и ее зависимости из источника (при этом для LIBS установлено значение -static) и обязательно передайте --enable-static --disable-shared их configure сценариям.

Если это не такработайте, просто скомпилируйте его на очень старой машине и предоставьте двоичные файлы для glibc и musl.

...