Iperf: Iperf -s

Dibuat pada 3 Feb 2016  ·  9Komentar  ·  Sumber: esnet/iperf

Saat menjalankan perintah iperf -s kesalahan lemparannya

iperf3: kesalahan pencarian simbol: iperf3: simbol tidak ditentukan: iperf_create_pidfile

Salam.,
Surendar

question

Komentar yang paling membantu

menghapus libiperf0 menyelesaikan masalah ini untuk saya.

apt-get purge libiperf0

Semua 9 komentar

+1

Dikonfirmasi di Ubuntu 15.10

Mungkin perpustakaan bersama iperf3 (jika dibangun seperti itu, seperti default) tidak ada di jalur pencarian loader? Pada beberapa sistem mirip UNIX Anda dapat memuat ulang jalur pencarian pemuat dengan menjalankan ldconfig .

Jika itu tidak membantu Anda, berikan beberapa informasi lebih lanjut seperti OS dan distribusi apa yang Anda gunakan, dan bagaimana Anda menginstal iperf (misalnya dikompilasi dari sumber dan make install , paket yang dapat dieksekusi, dll.) .

Saya menggunakan Ubuntu 14.04 dan mendapatkan kesalahan yang sama, mencoba menjalankan ldconfig tetapi tidak membantu.
Menginstal iperf dari paket yang dapat dieksekusi.

Memiliki masalah yang sama pada instalasi Debian Jessie yang bersih. Kloning dari git. ./configure && make && make install .

Jadi, saya mempersempitnya. Alasan mengapa kami hanya mendapatkan tidak terdefinisi pada iperf_create_pidfile , mungkin karena kami telah menginstal paket iperf3 dari apt, dan ketika menghapusnya, perpustakaan tertinggal (bahkan ketika melakukan dpkg --purge iperf3 ). Ini menghasilkan libiperf.so.0 yang digunakan. Ini memiliki beberapa yang belum ditentukan;

root<strong i="10">@foobar</strong>:~/iperf3-git# ldd -d -r /usr/local/bin/iperf3 
    linux-vdso.so.1 (0x00007ffec4390000)
    libiperf.so.0 => /usr/lib/x86_64-linux-gnu/libiperf.so.0 (0x00007fe7f4e6a000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe7f4abf000)
    /lib64/ld-linux-x86-64.so.2 (0x000055aa474ef000)
undefined symbol: iperf_delete_pidfile  (/usr/local/bin/iperf3)
undefined symbol: iperf_create_pidfile  (/usr/local/bin/iperf3)
undefined symbol: iperf_get_test_one_off    (/usr/local/bin/iperf3)

Solusinya cukup mudah;

make uninstall
make clean
./configure
make -j20
make install
rm /usr/lib/x86_64-linux-gnu/*iperf*
ldconfig

Dan voila;

root<strong i="17">@foobar</strong>:~/iperf3-git# /usr/local/bin/iperf3 --version
iperf 3.1
Linux foobar 4.2.8-1-pve #1 SMP Fri Feb 26 16:37:36 CET 2016 x86_64
Optional features available: CPU affinity setting, IPv6 flow label, TCP congestion algorithm setting, sendfile / zerocopy

make install mungkin harus memanggil ldconfig sehingga perpustakaan diperbarui.

Terima kasih @jallakim telah memposting solusi alternatif! Saya pada suatu waktu mencoba mencari tahu bagaimana melakukan ldconfig secara otomatis, tetapi itu menjadi rumit karena tidak setiap platform menggunakan ldconfig (MacOS khususnya melakukan beberapa perintah lain untuk fungsi serupa). Mungkin masih ada masalah di pelacak masalah GitHub untuk masalah ini.

menghapus libiperf0 menyelesaikan masalah ini untuk saya.

apt-get purge libiperf0

@tingvold , solusi tersebut berfungsi untuk situasi saya. Jadi pada dasarnya, cara Anda pertama-tama adalah meng-uninstall dan kemudian menginstal. Saya kira opsi yang paling penting adalah "ldconfig"

Apakah halaman ini membantu?
0 / 5 - 0 peringkat