Estimados desarrolladores de iperf3,
Quiero usar iperf3 en un sistema de archivos mínimo con un kernel de Linux. Tengo que compilar estáticamente los programas para usar dentro del sistema de archivos. ¿Es posible compilar estáticamente iperf3?
yo hice
$ ./configure --build = arm-none-linux-gnueabi --host = arm-none-linux-gnueabi CFLAGS = -static CXXFLAGS = -static
$ hacer
Pero consigo
/ src $ archivo iperf3
iperf3: ejecutable ELF LSB de 64 bits, x86-64, versión 1 (SYSV), vinculado dinámicamente, intérprete /lib64/ld-linux-x86-64.so.2, para GNU / Linux 2.6.32, BuildID [sha1] = 33df741e068aaf7a9ae8a24a6243de87c35c6ca5, sin pelar
atentamente,
Jiahuan
./configure --enable-static --disable-shared; hacer ; hacer instalar
No he probado esto durante mucho tiempo, pero parece la respuesta correcta, ¡gracias @TheRealDJ!
Esto parece que ya no funciona. Construye la biblioteca estática pero no los ejecutables.
Hola,
Puedo confirmar esto. Intenté compilar iperf3 como ejecutable estático, pero aún se vincula con algunas bibliotecas:
❯ 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)
construir vía: ./configure --enable-static --disable-shared
Esto funcionó para mí:
./configure "LDFLAGS=--static" --disable-shared --without-sctp
make
make install
$ ldd iperf3
not a dynamic executable
También está en la documentación: https://software.es.net/iperf/faq.html
Comentario más útil
Esto funcionó para mí:
También está en la documentación: https://software.es.net/iperf/faq.html