安装Mininet时出错

时间:2014-07-04 05:18:04

标签: linux mininet

当我尝试安装Mininet时出现以下错误:

Installing Mininet core
~/mininet ~
cc -DVERSION=\"PYTHONPATH=. bin/mn --version\" mnexec.c -o mnexec
mnexec.c: In function ‘setns’:
mnexec.c:49: error: ‘__NR_setns’ undeclared (first use in this function)

我在网上搜索,发现我可以通过为我的32位或64位内核适当地定义缺少的系统调用号来解决问题。

如何为32位内核定义缺少的系统调用号?

1 个答案:

答案 0 :(得分:0)

我不知道Mininet是什么,但我相信您的问题可能是由于缺少必要的头文件。错误:

mnexec.c: In function ‘setns’: `mnexec.c:49: error: ‘__NR_setns’ undeclared (first use in this function)

表示在您尝试编译的内容中未声明__NR_setns。一点点挖掘显示了在Linux中引用它的可能标头。见Linux Cross Reference。一个简短的可能性列表是:

/usr/include/asm/unistd_32.h
/usr/include/asm/unistd_64.h
/usr/include/bits/syscall.h
/usr/include/valgrind/vki/vki-scnums-x86-linux.h
/usr/include/valgrind/vki/vki-scnums-amd64-linux.h

还有其他人,但那些看起来最相关。