如何在配置/制作/安装时指定 libpcap 的路径?

如何在配置/制作/安装时指定 libpcap 的路径?

我正在运行 Ubuntu 10.04.1,并尝试使用 使我的蓝牙加密狗进行数据包捕获hcidump

据我所知,必须编译 libpcap 才能启用蓝牙嗅探,并且考虑到 hcidump 没有找到单个数据包,我猜测 Ubuntu 为我安装的版本没有编译蓝牙支持。

因此我下载了较新版本的 libpcap 并安装了 bluez 头文件。配置了 libpcap 后,它对蓝牙支持给出了“是”。它现在已安装并位于 中/usr/local/lib/

现在我正在尝试编译 hcidump 以使用这个库而不是系统默认值,但我不知道如何...

我读到过 GCC 可以传递-lpcap标志来设置路径,但我还不知道如何做到这一点。

有任何想法吗?

答案1

我快速浏览了一下该libpcap软件包,似乎要获得蓝牙支持,您需要做的就是使用已安装的蓝牙开发文件对其进行编译。也就是说,安装蓝牙开发库 安装 libbluetooth-dev打包,然后重新编译libpcap

sudo apt-get install libbluetooth-dev build-essential fakeroot
sudo apt-get build-dep libpcap
apt-get source libpcap
cd libpcap-*
dpkg-buildpackage -rfakeroot -b -nc -us -uc
sudo dpkg -iGO ../*.deb

(最好在此dpkg-buildpackage步骤之前添加一个版本,debian/control以便您的软件包带有与官方软件包不同的版本号,例如 1.0.0-6bloo1。)

然后尝试hcidumpbluez-hcidump 安装 bluez-hcidump

如果确实需要重新编译hcidump并传递自定义包含文件路径(也可能是自定义库文件路径),大多数具有脚本的程序的方法configure是运行

CFLAGS='-I /path/to/dependency/include' LDFLAGS='-L /path/to/dependency/lib' ./configure …

/usr/local/include并且/usr/local/lib通常包含在默认搜索中。

相关内容