floodlight / ivs

Indigo Virtual Switch
Other
28 stars 32 forks source link

IVS make error #353

Open monicarajasekaran opened 8 years ago

monicarajasekaran commented 8 years ago

I installed IVS and get the following error on trying the 'make' command. Any idea why?

root@monica-HP-Z400-Workstation:/home/monica/Downloads/ivs# make make -C targets/ivs Package libnl-3.0 was not found in the pkg-config search path. Perhaps you should add the directory containing libnl-3.0.pc' to the PKG_CONFIG_PATH environment variable No package 'libnl-3.0' found Package libnl-3.0 was not found in the pkg-config search path. Perhaps you should add the directory containinglibnl-3.0.pc' to the PKG_CONFIG_PATH environment variable No package 'libnl-3.0' found make[1]: Entering directory /home/monica/Downloads/ivs/targets/ivs' Compiling[ release ]: OVSDriver::kflow.c /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c: In function ‘kflow_expire_recv’: /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:470:17: error: ‘NLE_AGAIN’ undeclared (first use in this function) return -NLE_AGAIN; ^ /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:470:17: note: each undeclared identifier is reported only once for each function it appears in /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:473:5: error: passing argument 1 of ‘nl_recv’ from incompatible pointer type [-Werror] return nl_recv(sk, nla, buf, creds); ^ In file included from /usr/include/netlink/genl/genl.h:15:0, from /home/monica/Downloads/ivs/modules/OVSDriver//module/src//ovs_driver_int.h:26, from /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:20: /usr/include/netlink/netlink.h:54:14: note: expected ‘struct nl_handle *’ but argument is of type ‘struct nl_sock *’ extern int nl_recv(struct nl_handle *, ^ /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c: In function ‘kflow_expire_task’: /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:485:5: error: implicit declaration of function ‘nl_recvmsgs_report’ [-Werror=implicit-function-declaration] if (nl_recvmsgs_report(kflow_expire_socket, nl_socket_get_cb(kflow_expire_socket)) == -NLE_AGAIN) { ^ /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:485:5: error: passing argument 1 of ‘nl_socket_get_cb’ from incompatible pointer type [-Werror] In file included from /usr/include/netlink/netlink.h:30:0, from /usr/include/netlink/genl/genl.h:15, from /home/monica/Downloads/ivs/modules/OVSDriver//module/src//ovs_driver_int.h:26, from /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:20: /usr/include/netlink/socket.h:40:24: note: expected ‘struct nl_handle *’ but argument is of type ‘struct nl_sock *’ extern struct nl_cb * nl_socket_get_cb(struct nl_handle *); ^ /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:485:92: error: ‘NLE_AGAIN’ undeclared (first use in this function) if (nl_recvmsgs_report(kflow_expire_socket, nl_socket_get_cb(kflow_expire_socket)) == -NLE_AGAIN) { ^ /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c: In function ‘ind_ovs_kflow_expire’: /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:553:47: error: ‘NL_AUTO_PORT’ undeclared (first use in this function) struct ovs_header *hdr = genlmsg_put(msg, NL_AUTO_PORT, NL_AUTO_SEQ, ^ /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:558:5: error: implicit declaration of function ‘nl_send_auto’ [-Werror=implicit-function-declaration] if (nl_send_auto(kflow_expire_socket, msg) < 0) { ^ /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:565:25: error: passing argument 1 of ‘nl_socket_modify_cb’ from incompatible pointer type [-Werror] kflow_expire, NULL); ^ In file included from /usr/include/netlink/netlink.h:30:0, from /usr/include/netlink/genl/genl.h:15, from /home/monica/Downloads/ivs/modules/OVSDriver//module/src//ovs_driver_int.h:26, from /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:20: /usr/include/netlink/socket.h:43:14: note: expected ‘struct nl_handle *’ but argument is of type ‘struct nl_sock *’ extern int nl_socket_modify_cb(struct nl_handle *, ^ /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:566:5: error: passing argument 1 of ‘nl_socket_get_cb’ from incompatible pointer type [-Werror] nl_cb_overwrite_recv(nl_socket_get_cb(kflow_expire_socket), kflow_expire_recv); ^ In file included from /usr/include/netlink/netlink.h:30:0, from /usr/include/netlink/genl/genl.h:15, from /home/monica/Downloads/ivs/modules/OVSDriver//module/src//ovs_driver_int.h:26, from /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:20: /usr/include/netlink/socket.h:40:24: note: expected ‘struct nl_handle *’ but argument is of type ‘struct nl_sock *’ extern struct nl_cb * nl_socket_get_cb(struct nl_handle *); ^ /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:566:5: error: passing argument 2 of ‘nl_cb_overwrite_recv’ from incompatible pointer type [-Werror] nl_cb_overwrite_recv(nl_socket_get_cb(kflow_expire_socket), kflow_expire_recv); ^ In file included from /usr/include/netlink/netlink.h:29:0, from /usr/include/netlink/genl/genl.h:15, from /home/monica/Downloads/ivs/modules/OVSDriver//module/src//ovs_driver_int.h:26, from /home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.c:20: /usr/include/netlink/handlers.h:134:13: note: expected ‘int (*)(struct nl_handle *, struct sockaddr_nl *, unsigned char **, struct ucred **)’ but argument is of type ‘int (*)(struct nl_sock *, struct sockaddr_nl *, unsigned char **, struct ucred **)’ extern void nl_cb_overwrite_recv(struct nl_cb *, ^ cc1: all warnings being treated as errors make[1]: *** [build/gcc-local/obj//home/monica/Downloads/ivs/modules/OVSDriver//module/src//kflow.o] Error 1 make[1]: Leaving directory/home/monica/Downloads/ivs/targets/ivs' make: *\ [all] Error 2 root@monica-HP-Z400-Workstation:/home/monica/Downloads/ivs#

rlane commented 8 years ago

You need to install the libnl dev packages. The package names depend on the distribution, for Ubuntu it's "libnl-3-dev libnl-route-3-dev libnl-genl-3-dev".