在 NS-3 DCE(网络模拟器 3 直接代码执行)中,NS-3 版本 3.21 和 dce 版本 1.4,默认包含的二进制文件之一是 iperf。然而,这个版本的 iperf 是 2.0.5,而最新版本的 iperf 是 3.0.10。由于 iperf3 不向后兼容 iperf2,而且 iperf3 提供了一些有趣的新功能,如果我可以将 iperf3 与 NS-3 dce 一起使用会非常有帮助。
正如以下链接所解释的那样: http ://www.nsnam.org/docs/dce/release/1.1/manual/html/dce-user-newapps.html 有某些要求(如makefile中的标志)进行调整以生成可供 dce 使用的二进制文件。
但是我无法让它工作。我尝试更改 iperf3 附带的所有 3 个 Makefile(-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
有谁知道该怎么做?
非常感谢任何帮助!