Chers développeurs iperf3,
Je veux utiliser iperf3 dans un système de fichiers minimal avec un noyau Linux. Je dois compiler statiquement les programmes à utiliser dans le système de fichiers. Est-ce possible de compiler statiquement iperf3?
J'ai fait
$ ./configure --build = arm-none-linux-gnueabi --host = arm-none-linux-gnueabi CFLAGS = -static CXXFLAGS = -static
$ faire
Mais je reçois
/ src $ fichier iperf3
iperf3: exécutable ELF 64 bits LSB, x86-64, version 1 (SYSV), lié dynamiquement, interpréteur /lib64/ld-linux-x86-64.so.2, pour GNU / Linux 2.6.32, BuildID [sha1] = 33df741e068aaf7a9ae8a24a6243de87c35c6ca5, non dépouillé
meilleures salutations,
Jiahuan
./configure --enable-static --disable-shared; faire ; faire installer
Je n'ai pas essayé cela depuis longtemps, mais cela semble la bonne réponse, merci @TheRealDJ!
Cela ne semble plus fonctionner. Il construit la bibliothèque statique mais pas les exécutables.
Salut,
Je peux le confirmer. J'ai essayé de construire iperf3 en tant qu'exécutable statique mais il est toujours lié à quelques bibliothèques:
❯ ldd ./iperf3
linux-vdso.so.1 (0x00006284def24000)
libcrypto.so.1.1 => /usr/lib/libcrypto.so.1.1 (0x00006284debef000)
libc.so.6 => /usr/lib/libc.so.6 (0x00006284dea29000)
libdl.so.2 => /usr/lib/libdl.so.2 (0x00006284dea24000)
libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00006284dea02000)
/lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00006284def26000)
construire via: ./configure --enable-static --disable-shared
Cela a fonctionné pour moi:
./configure "LDFLAGS=--static" --disable-shared --without-sctp
make
make install
$ ldd iperf3
not a dynamic executable
C'est aussi sur la documentation: https://software.es.net/iperf/faq.html
Commentaire le plus utile
Cela a fonctionné pour moi:
C'est aussi sur la documentation: https://software.es.net/iperf/faq.html