On Wed, Aug 22, 2012 at 12:11 PM, Markus Amend <[email protected]> wrote: > > >> -----Ursprüngliche Nachricht----- >> Von: [email protected] [mailto:netsniff- >> [email protected]] Im Auftrag von Daniel Borkmann >> Gesendet: Mittwoch, 22. August 2012 11:51 >> An: [email protected] >> Betreff: Re: [netsniff-ng] Build Errors Netsniff-ng >> >> On Wed, Aug 22, 2012 at 11:25 AM, Markus Amend <markus@netsniff- >> ng.org> wrote: >> > >> > >> >> -----Ursprüngliche Nachricht----- >> >> Von: [email protected] [mailto:netsniff- >> >> [email protected]] Im Auftrag von Daniel Borkmann >> >> Gesendet: Mittwoch, 22. August 2012 11:06 >> >> An: [email protected] >> >> Betreff: Re: [netsniff-ng] Build Errors Netsniff-ng >> >> >> >> On Wed, Aug 22, 2012 at 10:58 AM, Markus Amend <markus@netsniff- >> >> ng.org> wrote: >> >> >> >> >> -----Ursprüngliche Nachricht----- >> >> >> Von: [email protected] [mailto:netsniff- >> >> >> [email protected]] Im Auftrag von Daniel Borkmann >> >> >> Gesendet: Dienstag, 21. August 2012 18:50 >> >> >> An: [email protected] >> >> >> Betreff: Re: [netsniff-ng] Build Errors Netsniff-ng >> >> >> >> >> >> On Tue, Aug 21, 2012 at 11:17 AM, Markus Amend <markus@netsniff- >> >> >> ng.org> wrote: >> >> >> >> -----Ursprüngliche Nachricht----- >> >> >> >> Von: [email protected] [mailto:netsniff- >> >> >> >> [email protected]] Im Auftrag von Daniel Borkmann >> >> >> >> Gesendet: Dienstag, 21. August 2012 11:01 >> >> >> >> An: [email protected] >> >> >> >> Betreff: Re: [netsniff-ng] Build Errors Netsniff-ng >> >> >> >> >> >> >> >> On Tue, Aug 21, 2012 at 10:39 AM, Markus Amend >> >> >> >> <markus@netsniff- ng.org> wrote: >> >> >> >> >> >> >> >> > I'm actually not able to compile netsniff-ng. OS: Ubuntu >> >> >> >> > 10.04 >> > 64bit. >> >> >> >> > >> >> >> >> > Terminal output after "make" >> >> >> >> > >> >> >> >> > [...] >> >> >> >> > [100%] Building C object >> >> >> >> > netsniff-ng/CMakeFiles/netsniff-ng.dir/__/netsniff-ng.c.o >> >> >> >> > Linking C executable netsniff-ng >> >> >> >> > CMakeFiles/netsniff-ng.dir/__/mac80211.c.o: In function >> >> > `nl80211_init': >> >> >> >> > mac80211.c:(.text+0xba): undefined reference to >> `nl_handle_alloc' >> >> >> >> > mac80211.c:(.text+0xd1): undefined reference to `genl_connect' >> >> >> >> > mac80211.c:(.text+0xdd): undefined reference to >> >> >> `genl_ctrl_alloc_cache' >> >> >> >> > mac80211.c:(.text+0xf5): undefined reference to >> >> >> >> `genl_ctrl_search_by_name' >> >> >> >> > mac80211.c:(.text+0x122): undefined reference to >> >> >> `genl_ctrl_alloc_cache' >> >> >> >> > CMakeFiles/netsniff-ng.dir/__/mac80211.c.o: In function >> >> >> >> > `enter_rfmon_mac80211': >> >> >> >> > mac80211.c:(.text+0x262): undefined reference to `nlmsg_alloc' >> >> >> >> > mac80211.c:(.text+0x278): undefined reference to >> >> `genl_family_get_id' >> >> >> >> > mac80211.c:(.text+0x29b): undefined reference to `genlmsg_put' >> >> >> >> > mac80211.c:(.text+0x2b5): undefined reference to `nla_put' >> >> >> >> > mac80211.c:(.text+0x307): undefined reference to `nla_put' >> >> >> >> > mac80211.c:(.text+0x32c): undefined reference to `nla_put' >> >> >> >> > mac80211.c:(.text+0x341): undefined reference to >> >> >> >> `nl_send_auto_complete' >> >> >> >> > mac80211.c:(.text+0x353): undefined reference to >> `nl_wait_for_ack' >> >> >> >> > mac80211.c:(.text+0x376): undefined reference to `nlmsg_free' >> >> >> >> > mac80211.c:(.text+0x3a3): undefined reference to >> `genl_family_put' >> >> >> >> > mac80211.c:(.text+0x3ad): undefined reference to >> `nl_cache_free' >> >> >> >> > mac80211.c:(.text+0x3b7): undefined reference to >> >> `nl_handle_destroy' >> >> >> >> > mac80211.c:(.text+0x454): undefined reference to `nlmsg_free' >> >> >> >> > CMakeFiles/netsniff-ng.dir/__/mac80211.c.o: In function >> >> >> >> > `leave_rfmon_mac80211': >> >> >> >> > mac80211.c:(.text+0x51a): undefined reference to `nlmsg_alloc' >> >> >> >> > mac80211.c:(.text+0x530): undefined reference to >> >> `genl_family_get_id' >> >> >> >> > mac80211.c:(.text+0x553): undefined reference to `genlmsg_put' >> >> >> >> > mac80211.c:(.text+0x56e): undefined reference to `nla_put' >> >> >> >> > mac80211.c:(.text+0x583): undefined reference to >> >> >> >> `nl_send_auto_complete' >> >> >> >> > mac80211.c:(.text+0x591): undefined reference to >> `nl_wait_for_ack' >> >> >> >> > mac80211.c:(.text+0x59d): undefined reference to `nlmsg_free' >> >> >> >> > mac80211.c:(.text+0x5a7): undefined reference to >> `genl_family_put' >> >> >> >> > mac80211.c:(.text+0x5b1): undefined reference to >> `nl_cache_free' >> >> >> >> > mac80211.c:(.text+0x5bb): undefined reference to >> >> `nl_handle_destroy' >> >> >> >> > collect2: ld returned 1 exit status >> >> >> >> > make[2]: *** [netsniff-ng/netsniff-ng] Error 1 >> >> >> >> > make[1]: *** [netsniff-ng/CMakeFiles/netsniff-ng.dir/all] >> >> >> >> > Error >> >> >> >> > 2 >> >> >> >> > make: *** [all] Error 2 >> >> >> >> > >> >> >> >> > It's a problem with netlink? Any ideas? >> >> >> >> >> >> >> >> Hmm, on my Debian stable system (where it links w/o problems), >> >> >> >> I have installed the following: >> >> >> >> >> >> >> >> dpkg --get-selections | grep libnl >> >> >> >> libnl-dev install >> >> >> >> libnl1 install >> >> >> >> >> >> >> >> Where the Debian libnl version is 1.1-6, in Ubuntu 10.04 its >> >> > 1.1-5build1. >> >> >> > The >> >> >> >> diff between "-5" and "-6" in the Debian package only refers to >> >> >> >> a bugfix >> >> >> > and >> >> >> >> some Debian-related changes. >> >> >> >> >> >> >> >> Also, from your log, I see that the headers were found >> >> >> >> otherwise the build would have stopped earlier. If you remove >> >> >> >> your src/build/ folder, recreate >> >> >> > it >> >> >> >> and type "cmake ..", what does it say? >> >> >> > >> >> >> > I always make a "rm -rf*" in the build dir before compiling :-) >> >> >> > And it's all fine. >> >> >> > >> >> >> > cmake .. >> >> >> > -- The C compiler identification is GNU >> >> >> > -- Check for working C compiler: /usr/bin/gcc >> >> >> > -- Check for working C compiler: /usr/bin/gcc -- works >> >> >> > -- Detecting C compiler ABI info >> >> >> > -- Detecting C compiler ABI info - done >> >> >> > -- Performing Test BPFATTACH_RUN_RESULT >> >> >> > -- Performing Test BPFATTACH_RUN_RESULT - Success >> >> >> > -- System has SO_ATTACH_FILTER/SO_DETACH_FILTER support >> >> >> > -- Performing Test PFPACKET_RUN_RESULT >> >> >> > -- Performing Test PFPACKET_RUN_RESULT - Success >> >> >> > -- System has PF_PACKET sockets >> >> >> > -- Performing Test STRICT_ALIGN_RUN_RESULT >> >> >> > -- Performing Test STRICT_ALIGN_RUN_RESULT - Success >> >> >> > -- System has strict alignment >> >> >> > -- Performing Test TX_RING_RUN_RESULT >> >> >> > -- Performing Test TX_RING_RUN_RESULT - Success >> >> >> > -- System has TX_RING support >> >> >> > -- Performing Test eth0 >> >> >> > -- Performing Test eth0 - Failed >> >> >> > -- System has no SOF_TIMESTAMPING_RAW_HARDWARE support >> >> >> > -- Looking for include files CMAKE_HAVE_PTHREAD_H >> >> >> > -- Looking for include files CMAKE_HAVE_PTHREAD_H - found >> >> >> > -- Looking for pthread_create in pthreads >> >> >> > -- Looking for pthread_create in pthreads - not found >> >> >> > -- Looking for pthread_create in pthread >> >> >> > -- Looking for pthread_create in pthread - found >> >> >> > -- Found Threads: TRUE >> >> >> > -- Found Libnl: /usr/lib/libnl.so >> >> >> > -- Found Curses: /usr/lib/libcurses.so >> >> >> > -- Found FLEX: /usr/bin/flex >> >> >> > -- Found BISON: /usr/bin/bison >> >> >> > -- Found libcli: /usr/lib/libcli.so >> >> >> > -- Found LibGeoIP: /usr/lib/libGeoIP.so >> >> >> > -- REQUIRED_VARS (missing: NACL_LIBRARY NACL_INCLUDE_DIR) >> NaCl >> >> >> was >> >> >> > not found. Check if NACL_INCLUDE_DIR and NACL_LIB_DIR are >> >> >> > properly >> >> >> set >> >> >> > in nacl_path.cmake. Skipping curvetun build. >> >> >> > -- Found libnetfilter_conntrack: >> >> >> > /usr/lib/libnetfilter_conntrack.so >> >> >> > -- Found liburcu: /usr/lib/liburcu.so >> >> >> > -- Configuring done >> >> >> > -- Generating done >> >> >> > -- Build files have been written to: >> >> >> > /home/markus/Desktop/git_netsniff/netsniff-ng/src/build >> >> >> >> >> >> What does the following say? >> >> >> >> >> >> readelf -Ws /usr/lib/libnl.so | grep nla_put >> >> > >> >> > 126: 0000000000018300 29 FUNC GLOBAL DEFAULT 12 > nla_put_u64 >> >> > 192: 00000000000181e0 90 FUNC GLOBAL DEFAULT 12 >> nla_put_addr >> >> > 357: 00000000000182b0 69 FUNC GLOBAL DEFAULT 12 >> > nla_put_string >> >> > 536: 0000000000018390 93 FUNC GLOBAL DEFAULT 12 >> > nla_put_nested >> >> > 543: 0000000000018090 239 FUNC GLOBAL DEFAULT 12 nla_put >> >> > 545: 00000000000182a0 9 FUNC GLOBAL DEFAULT 12 > nla_put_flag >> >> > 596: 0000000000018320 5 FUNC GLOBAL DEFAULT 12 >> nla_put_msecs >> >> > 650: 0000000000018370 28 FUNC GLOBAL DEFAULT 12 nla_put_u8 >> >> > 718: 0000000000018350 29 FUNC GLOBAL DEFAULT 12 > nla_put_u16 >> >> > 748: 0000000000018240 90 FUNC GLOBAL DEFAULT 12 > nla_put_data >> >> > 817: 0000000000018330 28 FUNC GLOBAL DEFAULT 12 > nla_put_u32 >> >> >> >> >> >> file /usr/lib/libnl.so.1.1 (... or where ever you .so points > to) >> >> > >> >> > /usr/lib/libnl.so.1.1: ELF 64-bit LSB shared object, x86-64, >> >> > version 1 (SYSV), dynamically linked, stripped >> >> >> >> Looks good! >> >> >> >> > v0.5.7 is able to compile. >> >> >> >> So, 0.5.7 is able to compile, but the latest master doesn't? >> > >> > exact >> >> So it could be the cmake module. Although it seems weird to me that it > says >> it has found it and I don't have problems on my systems. >> >> The latest change in this file is here [1]. So you could give it a try by > applying >> this: >> >> diff --git a/src/cmake/modules/FindLibnl.cmake >> b/src/cmake/modules/FindLibnl.cmake >> index a74b6f5..fac0839 100644 >> --- a/src/cmake/modules/FindLibnl.cmake >> +++ b/src/cmake/modules/FindLibnl.cmake >> @@ -10,10 +10,10 @@ >> # LIBNL_LIBRARIES - the libnl library >> # LIBNL_INCLUDE_DIR - the include path of the libnl library >> >> -set(LIBNL_LIBRARIES ${LIBNL_LIBRARY}) >> - >> find_library(LIBNL_LIBRARY nl) >> >> +set(LIBNL_LIBRARIES ${LIBNL_LIBRARY}) >> + >> find_path( >> LIBNL_INCLUDE_DIR >> NAMES netlink.h >> >> >> [1] http://lingrok.org/diff/netsniff- >> ng/src/cmake/modules/FindLibnl.cmake?r2=/netsniff- >> ng/src/cmake/modules/FindLibnl.cmake%40698ba1d348060cc9ca3d3c3a56f4 >> 180d62ae5c8a&r1=/netsniff- >> ng/src/cmake/modules/FindLibnl.cmake%406c0f2ebe28f9522c140f6c0e05f92 >> d61e9b81c34 > > If I copy > https://github.com/gnumaniacs/netsniff-ng/blob/6c0f2ebe28f9522c140f6c0e05f92 > d61e9b81c34/src/cmake/modules/FindLibnl.cmake it works.
Okay, fixed upstream. --
