On Mon, Nov 5, 2012 at 2:36 PM, Daniel Borkmann <[email protected]> wrote: > On Mon, Nov 5, 2012 at 2:22 PM, Doug Burks <[email protected]> wrote: >> On Mon, Nov 5, 2012 at 7:03 AM, Daniel Borkmann <[email protected]> >> wrote: >>> Can you please try again? >>> >>> I just committed this: >>> https://github.com/gnumaniacs/netsniff-ng/commit/52471d34caeb9bdb96ac87249fdc9c340851ed13 >>> >>> The problem is that in one include file from the libnl3 headers, it >>> tries to include another header and simply cannot find it (because the >>> libnl3 path prefix is missing). >> >> I got this: >> make netsniff-ng >> Building netsniff-ng: >> -e CC hash.c >> -e CC mac80211.c >> -e CC dissector.c >> -e CC dissector_eth.c >> -e CC dissector_80211.c >> -e CC proto_arp.c >> -e CC proto_ethernet.c >> -e CC proto_icmpv4.c >> -e CC proto_icmpv6.c >> -e CC proto_igmp.c >> -e CC proto_ip_authentication_hdr.c >> -e CC proto_ip_esp.c >> -e CC proto_ipv4.c >> -e CC proto_ipv6.c >> -e CC proto_ipv6_dest_opts.c >> -e CC proto_ipv6_fragm.c >> -e CC proto_ipv6_hop_by_hop.c >> -e CC proto_ipv6_in_ipv4.c >> -e CC proto_ipv6_mobility_hdr.c >> -e CC proto_ipv6_no_nxt_hdr.c >> -e CC proto_ipv6_routing.c >> -e CC proto_none.c >> -e CC proto_tcp.c >> -e CC proto_udp.c >> -e CC proto_vlan.c >> -e CC proto_vlan_q_in_q.c >> -e CC proto_mpls_unicast.c >> -e CC proto_80211_mac_hdr.c >> -e CC xio.c >> -e CC xutils.c >> xutils.c: In function ‘set_system_socket_mem’: >> xutils.c:274:10: warning: variable ‘ret’ set but not used >> [-Wunused-but-set-variable] > > Fixed. > >> -e CC xmalloc.c >> -e CC bpf.c >> -e CC oui.c >> -e CC pcap.c >> -e CC pcap_rw.c >> -e CC pcap_sg.c >> -e CC pcap_mmap.c >> -e CC ring_rx.c >> -e CC ring_tx.c >> -e CC mtrand.c >> -e CC tprintf.c >> -e CC netsniff-ng.c >> -e LD netsniff-ng >> /usr/bin/ld: netsniff-ng/mac80211.o: undefined reference to symbol >> 'nlmsg_alloc' >> /usr/bin/ld: note: 'nlmsg_alloc' is defined in DSO /lib/libnl-3.so.200 >> so try adding it to the linker command line >> /lib/libnl-3.so.200: could not read symbols: Invalid operation >> collect2: ld returned 1 exit status >> make: *** [netsniff-ng] Error 1 >> >> What am I missing? > > On my Debian machine, it is installed under /usr/lib/ . The symlink > /usr/lib/libnl-3.so.200 points to /usr/lib/libnl-3.so.200.10.1, so > does the symlink /usr/lib/libnl-3.so . The same counts for > libnl-genl-3.so et al. Is that maybe not the case on your machine > since ld cannot read the symbols?! (Wrong symlink?)
# file /usr/lib/libnl-3.so.200.10.1 /usr/lib/libnl-3.so.200.10.1: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, not stripped Or, is yours for 32-bit by accident? --
