2014-12-18 6 views
0

В NS-3 DCE (сетевой симулятор 3 Direct Code Exectution), с версией NS-3 версии 3.21 и версией 1.4, по умолчанию один из включенных двоичных файлов - iperf. Однако эта версия iperf 2.0.5, а самая новая версия iperf 3.0.10. Поскольку iperf3 не обратно совместим с iperf2, а iperf3 предлагает некоторые интересные новые функции, было бы очень полезно, если бы я мог использовать iperf3 с NS-3 dce.NS-3 dce и iperf3

Как поясняется на следующей ссылке: http://www.nsnam.org/docs/dce/release/1.1/manual/html/dce-user-newapps.html существуют определенные требования (например, флаги в Makefile), которые должны быть отрегулированы для создания бинарного кода, который может быть использован АКД.

Я не могу заставить его работать. Я попытался изменить все 3 Makefiles, прилагаемым iperf3 (-fpic CFLAG и -pie -rdynmic LDFLAGS), но я все еще получаю ошибку, когда я пытаюсь построить его:

/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/gcrt1.o : relocation R_X86_64_32S against '__libc_csu_fini' can not be used when making a shared object: recompile with -fPIC 
/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/gcrt1.o: error adding symbols: Bad value 
collect2: error: ld returned 1 exit status 
make[2]: *** [iperf3_profile] Error 1 
make[2]: Leaving directory 

Кто-нибудь знает что делать?

Любая помощь действительно оценена!

+0

попытайтесь изменить '-fpic' на' -fPIC' – deimus

ответ

-1

Вы можете следить за этой guide построить iperf3 с libOS:

... выше ошибка происходит из-за плохой совместимости между профилем GCC опции («-pg») и вариант ПОС.

потому что основной двоичный файл (iperf3) был построен даже с этой ошибкой, вы можете увидеть двоичный файл iperf3 (вверху) /src/.libs/iperf3.

Отключение сборки для iperf3_profile, по-видимому, требуется для DCE build. патчи приветствуются;)

Однако в настоящее время вы не можете запустить iperf3 из-за отсутствия символа (__h_errno_location). Это можно зафиксировать с помощью patch teto.