tcpdump mailing list archives

Re: libpcap detection and linking in tcpdump


From: Denis Ovsienko via tcpdump-workers <tcpdump-workers () lists tcpdump org>
Date: Fri, 22 Jan 2021 22:54:28 +0000

--- Begin Message --- From: Denis Ovsienko <denis () ovsienko info>
Date: Fri, 22 Jan 2021 22:54:28 +0000
On Wed, 9 Sep 2020 17:07:25 +0100
Denis Ovsienko via tcpdump-workers <tcpdump-workers () lists tcpdump org>
wrote:

Here are my steps to reproduce:

libpcap$ ./configure --enable-remote --prefix=/tmp/libpcap
libpcap$ make
libpcap$ make install
tcpdumpbuild$ cmake -DWITH_CRYPTO="yes"
-DCMAKE_PREFIX_PATH=/tmp/libpcap -DCMAKE_INSTALL_PREFIX=/tmp/libpcap
/path/to/tcpdump_git_clone

The above fails if the package libpcap0.8-dev is installed. After
removing the package the above works and tcpdump links
with /tmp/libpcap/lib/libpcap.so.1 as expected.

I have tested it again with the current master branches of libpcap and
tcpdump. Both builds (with and without libpcap0.8-dev) now complete
without errors.

However, in both cases the installed tcpdump fails to run because it
is linked with libpcap.so.1. Which, as far as I can remember,
previously somehow managed to resolve to the
existing /tmp/libpcap/lib/libpcap.so.1, but not amymore:

$ /tmp/libpcap/bin/tcpdump --version
/tmp/libpcap/bin/tcpdump: error while loading shared libraries:
libpcap.so.1: cannot open shared object file: No such file or directory

$ ldd /tmp/libpcap/bin/tcpdump
        linux-vdso.so.1 (0x00007ffdc7ffe000)
        libpcap.so.1 => not found
        libcrypto.so.1.1 => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1
(0x00007f34522ac000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6
(0x00007f3451ebb000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2
(0x00007f3451cb7000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0
(0x00007f3451a98000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f3452c6f000)

$ /tmp/libpcap/bin/pcap-config --libs
-L/tmp/libpcap/lib -Wl,-rpath,/tmp/libpcap/lib -lpcap

It may be a user error, or there may be some other edge case hidden in
the combination of the two build systems. So long as it does not cause
obvious failures to build, I would be fine to leave it as it is now.

-- 
    Denis Ovsienko

--- End Message ---
_______________________________________________
tcpdump-workers mailing list
tcpdump-workers () lists tcpdump org
https://lists.sandelman.ca/mailman/listinfo/tcpdump-workers

Current thread: