Как я могу указать путь к libpcap при настройке / создании / установке?

Я использую Ubuntu 10.04.1 и пытаюсь заставить систему перехвата пакетов работать с моим ключом Bluetooth, используя hcidump,

Из того, что я прочитал, libpcap должен быть скомпилирован, чтобы включить сниффинг Bluetooth, и учитывая, что hcidump не находит ни одного пакета, я предполагаю, что версия, установленная для меня Ubuntu, не скомпилирована с поддержкой bluetooth.

Поэтому я скачал более новую версию libpcap и установил заголовочные файлы bluez. Настроил libpcap, и он дал "Да" для поддержки Bluetooth. Сейчас установлено и сидит в /usr/local/lib/,

Сейчас я пытаюсь скомпилировать hcidump для использования этой библиотеки, а не системы по умолчанию, но я не могу понять, как...

Я читал, что GCC может быть передан -lpcap флаг, чтобы установить путь, но я не понял, как это сделать.

Есть идеи?

1 ответ

Я быстро взглянул на libpcap пакет, и кажется, что все, что вам нужно сделать, чтобы получить поддержку Bluetooth, это скомпилировать его с установленными файлами разработки Bluetooth. То есть установите libbluetooth-dev Установите 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.)

Тогда попробуйте hcidump исполняемый файл из bluez-hcidump Установите bluez-hcidump,

Если вам нужно перекомпилировать hcidump и передайте ему собственный путь к включаемому файлу (и, возможно, собственный путь к файлу библиотеки), как в большинстве программ, которые имеют configure скрипт должен работать

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

/usr/local/include а также /usr/local/lib обычно включаются в поиск по умолчанию.

Другие вопросы по тегам