libnl-3包括破碎?

时间:2012-12-03 15:47:12

标签: linux ubuntu ipc netlink

我正在尝试在Ubuntu下使用libnl 3(http://www.infradead.org/~tgr/libnl/)来使用netlink从IPv6邻居缓存中获取一些信息。

我为这个lib包含了一堆标题,但gcc已经失败了第一个:

#include <libnl3/netlink/netlink.h>

没有“主标题”,如libnl.h。

>$ gcc netlink_test.c 
In file included from netlink_test.c:11:0:
/usr/include/libnl3/netlink/netlink.h:24:36: fatal error: netlink/netlink-compat.h: No such file or directory
compilation terminated.

文件netlink.h包含“netlink / netlink-compat.h”。不幸的是,没有“/ usr / include / netlink /”文件夹。只有“/ usr / include / libnl3 / netlink /”

包括“netlink / netlink.h”因此给了我:

netlink_test.c:10:29: fatal error: netlink/netlink.h: No such file or directory
compilation terminated.

我在Ubuntu 12.04下安装了以下软件包:

libnl-3-200
libnl-3-200-dbg
libnl-3-dev
libnl-3-doc
libnl-genl-3-200
libnl-genl-3-200-dev
libnl-route-3-200
libnl-route-3-200-dev

我在这里遗失了什么,或者这真的被打破了?

1 个答案:

答案 0 :(得分:7)

好的,所以包裹没有坏,我是;)

不久前,他们引入了一种机制,使用户能够安装此库的不同版本。 现在您可以使用&#34; pkg-config&#34;进行配置。或者只是使用&#34; -I / usr / include / libnl3 /&#34;将精确的目录传递给编译器。 它有效。