أعزائي مطوري iperf3 ،
أريد استخدام iperf3 في نظام ملفات بسيط مع نواة لينكس. لا بد لي من تجميع البرامج بشكل ثابت لاستخدامها داخل نظام الملفات. هل هذا ممكن لتجميع iperf3 بشكل ثابت؟
فعلت
$ ./configure --build = arm-none-linux-gnueabi --host = arm-none-linux-gnueabi CFLAGS = -static CXXFLAGS = -static
$ صنع
لكني حصلت
/ src $ file iperf3
iperf3: ELF 64-bit LSB قابل للتنفيذ ، x86-64 ، الإصدار 1 (SYSV) ، مرتبط ديناميكيًا ، مترجم /lib64/ld-linux-x86-64.so.2 ، لـ GNU / Linux 2.6.32 ، BuildID [sha1] = 33df741e068aaf7a9ae8a24a6243de87c35c6ca5 ، غير مجردة
تحياتي الحارة،
جياهوان
./configure - تمكين - ثابت - تعطيل مشترك ؛ يصنع ؛ قم بالتثبيت
لم أجرب هذا منذ فترة طويلة ، ولكن يبدو أن هذا هو الجواب الصحيح ، شكرًاTheRealDJ!
لا يبدو أن هذا يعمل بعد الآن. يقوم ببناء المكتبة الثابتة ولكن ليس الملفات التنفيذية.
مرحبا،
أستطيع أن أؤكد هذا. لقد حاولت إنشاء iperf3 كملف ثابت قابل للتنفيذ ولكنه لا يزال يرتبط ببعض المكتبات:
❯ 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)
بناء عن طريق: ./configure --enable-static --disable-shared
نجح هذا بالنسبة لي:
./configure "LDFLAGS=--static" --disable-shared --without-sctp
make
make install
$ ldd iperf3
not a dynamic executable
إنه موجود أيضًا في الوثائق: https://software.es.net/iperf/faq.html
التعليق الأكثر فائدة
نجح هذا بالنسبة لي:
إنه موجود أيضًا في الوثائق: https://software.es.net/iperf/faq.html