Установка LibNFC на Ubuntu

Вопрос или проблема

У меня есть несколько NFC-чипов, которые я хотел бы читать с моей установки Ubuntu. У меня есть плата PN532 Breakout, и я хочу установить LibNFC, чтобы я мог их модифицировать и читать. Я следовал учебнику, и шаги выглядят так:

apt-get install autoconf libtool libusb-dev libpcsclite-dev build-essential
wget https://github.com/nfc-tools/libnfc/releases/download/libnfc-1.7.1/libnfc-1.7.1.tar.bz2
tar -jxvf libnfc-1.7.1.tar.bz2
cd libnfc-1.7.1
autoreconf -vis
./configure --with-drivers=all --sysconfdir=/etc --prefix=/usr
make
sudo make install
sudo mkdir /etc/nfc
sudo mkdir /etc/nfc/devices.d

Однако я застрял на

make

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

(CDPATH="${ZSH_VERSION+.}:" && cd . && autoheader) rm -f stamp-h1 touch config.h.in cd . && /bin/bash ./config.status config.h config.status: creating config.h make all-recursive make[1]: Entering directory '/home/ubuntu/libnfc-1.7.1'
Making all in libnfc
make[2]: Entering directory '/home/ubuntu/libnfc-1.7.1/libnfc' Making all in chips
make[3]: Entering directory '/home/ubuntu/libnfc-1.7.1/libnfc/chips' CC libnfcchips_la-pn53x.lo
libtool: Ошибка несоответствия версии. Это libtool 2.4.6 Debian-2.4.6-0.1, но
libtool: определение этого LT_INIT идет от libtool 2.4.2.
libtool: Вам следует воссоздать aclocal.m4 с макросами из libtool 2.4.6 Debian-2.4.6-0.1
libtool: и снова запустить autoconf.
Makefile:397: рецепт для цели 'libnfcchips_la-pn53x.lo' не удался
make[3]: *** [libnfcchips_la-pn53x.lo] Ошибка 63
make[3]: Leaving directory '/home/ubuntu/libnfc-1.7.1/libnfc/chips'
Makefile:613: рецепт для цели 'all-recursive' не удался
make[2]: *** [all-recursive] Ошибка 1
make[2]: Leaving directory '/home/ubuntu/libnfc-1.7.1/libnfc'
Makefile:478: рецепт для цели 'all-recursive' не удался
make[1]: *** [all-recursive] Ошибка 1
make[1]: Leaving directory '/home/ubuntu/libnfc-1.7.1'
Makefile:385: рецепт для цели 'all' не удался
make: *** [all] Ошибка 2

Обновление: Я вместо этого скачал с этого сайта (это на странице wiki) и следовал файлу INSTALL (с необходимыми изменениями)

  1. ./configure –prefix=/usr

  2. make

  3. sudo make install

Это решит проблему

Попробуйте установить пакет libtool-bin

Ответ или решение

Установка LibNFC на Ubuntu

Установка библиотеки LibNFC на Ubuntu может показаться непростой задачей, особенно если вы сталкиваетесь с ошибками версии во время процесса компиляции. В данном руководстве мы пройдем по всем шагам, с которыми вы столкнетесь, и предложим стратегии для их преодоления.

Установка необходимых зависимостей

Перед началом установки LibNFC убедитесь, что у вас установлены все необходимые зависимости. Откройте терминал и выполните следующую команду:

sudo apt-get install autoconf libtool libusb-dev libpcsclite-dev build-essential

Эта команда установит инструменты, необходимые для сборки LibNFC из исходного кода.

Загрузка и распаковка источника LibNFC

Загрузите и распакуйте последнюю версию LibNFC. Выполните следующие команды:

wget https://github.com/nfc-tools/libnfc/releases/download/libnfc-1.7.1/libnfc-1.7.1.tar.bz2
tar -jxvf libnfc-1.7.1.tar.bz2
cd libnfc-1.7.1

Генерация конфигурационных файлов

LibNFC использует систему конфигурации autoconf. Для начала работы выполните следующие команды:

autoreconf -vis

Эта команда создаст необходимые файлы для конфигурации сборки.

Конфигурация сборки

Теперь вам нужно настроить сборку. В зависимости от вашего оборудования можете использовать следующую команду для конфигурации:

./configure --with-drivers=all --sysconfdir=/etc --prefix=/usr

Эта команда сообщает конфигурационному процессу, что вы собираете драйверы для всех поддерживаемых устройств и указываете, где должны располагаться конфигурационные файлы.

Устранение проблемы с несовместимостью версий

Если при выполнении команды make возникает ошибка несовместимости версий libtool, как в вашем случае:

libtool: Version mismatch error. This is libtool 2.4.6, but the libtool: definition of this LT_INIT comes from libtool 2.4.2.

Это указывает на то, что ваша среда использования не совместима с установленной версией libtool. Попробуйте выполнить следующие шаги:

  1. Удалите старые сгенерированные файлы:
make clean
  1. Переустановите пакет libtool-bin, чтобы гарантировать, что все файлы актуализированы:
sudo apt-get install --reinstall libtool-bin
  1. Затем снова выполните команды генерации:
autoreconf -vis
  1. И снова запустите настройку и сборку:
./configure --with-drivers=all --sysconfdir=/etc --prefix=/usr
make

Установка LibNFC

Если сборка выполнена без ошибок, вы можете завершить установку с помощью следующих команд:

sudo make install
sudo mkdir /etc/nfc
sudo mkdir /etc/nfc/devices.d

Заключение

Теперь LibNFC установлен и готов к использованию. Вы можете приступить к работе с NFC-чипами, используя вашу плату PN532.

Если после выполнения всех описанных шагов у вас продолжают возникать проблемы, полезно обратиться к документации или сообществу LibNFC, где вы сможете получить помощь от других пользователей и разработчиков.

Таким образом, следуя этому руководству, вы сможете успешно установить LibNFC на Ubuntu и начать взаимодействовать с NFC-чипами. Если у вас возникнут дополнительные вопросы, не стесняйтесь обращаться за поддержкой.

Оцените материал
Добавить комментарий

Капча загружается...