Автор Тема: SmartCardReader | Ase.h:20:17: fatal error: usb.h:  (Прочитано 629 раз)

Оффлайн PIKNIK

  • Завсегдатай
  • *
  • Сообщений: 10
Доброго дня, Уважаемые!

Имею на борту ALT Linux t7 (Trientalis) livecd и пытаюсь подружить его с USB-считывателем смарт-карт Athena ASEDrive V3.

На оф. сайте есть под него драйвера в виде исходников. Весят 280К. Ничего сложного быть не должно, но...

Делаю вот так:
Спойлер
[root@1asedriveiiie-usb-3.7]# ./configure
[root@1asedriveiiie-usb-3.7]# make

gcc -o libASEDriveIIIe-USB.so usb.c atr.c DriverIO.c CommandTypes.c ReaderCommands.c T1Protocol.c MemoryCards.c InitCardParams.c ifdhandler.c -fPIC -D_REENTRANT -DIFDHANDLERv2 -Wall -I. -pthread -I/usr/include/PCSC   -lpcsclite   -lusb -shared In file included from usb.c:14:0:
Ase.h:20:17: fatal error: usb.h: Нет такого файла или каталога
compilation terminated.
In file included from atr.c:1:0:
Ase.h:20:17: fatal error: usb.h: Нет такого файла или каталога
compilation terminated.
In file included from DriverIO.c:1:0:
Ase.h:20:17: fatal error: usb.h: Нет такого файла или каталога
compilation terminated.
In file included from CommandTypes.c:1:0:
Ase.h:20:17: fatal error: usb.h: Нет такого файла или каталога
compilation terminated.
In file included from ReaderCommands.c:1:0:
Ase.h:20:17: fatal error: usb.h: Нет такого файла или каталога
compilation terminated.
In file included from T1Protocol.c:1:0:
Ase.h:20:17: fatal error: usb.h: Нет такого файла или каталога
compilation terminated.
In file included from MemoryCards.c:1:0:
Ase.h:20:17: fatal error: usb.h: Нет такого файла или каталога
compilation terminated.
In file included from InitCardParams.c:1:0:
Ase.h:20:17: fatal error: usb.h: Нет такого файла или каталога
compilation terminated.
In file included from ifdhandler.c:15:0:
Ase.h:20:17: fatal error: usb.h: Нет такого файла или каталога
compilation terminated.
make: [libASEDriveIIIe-USB.so] Ошибка 1 (игнорирована)

Программа на всю консоль говорит, что не может найти usb.h. Его действительно нет:
Спойлер
[root@1 asedriveiiie-usb-3.7]# ls /usr/include/usb.h
ls: невозможно получить доступ к /usr/include/usb.h: Нет такого файла или каталога

Вот тут самое интересное: где добыть usb.h? Гугл подсказал, что нужно поставить libusb, но apt-get говорит, что libusb у меня самый последний. libusb-devel - тоже. Даже статик зачем-то установил - ничего. Ошибка таже.

Спойлер
[root@1 asedriveiiie-usb-3.7]# apt-get install libusb
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Последняя версия libusb уже установлена.
0 будет обновлено, 0 новых установлено, 0 пакетов будет удалено и 17 не будет обновлено.
[root@1 asedriveiiie-usb-3.7]# apt-get install libusb-devel
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Последняя версия libusb-devel уже установлена.
0 будет обновлено, 0 новых установлено, 0 пакетов будет удалено и 17 не будет обновлено.
[root@1asedriveiiie-usb-3.7]# apt-get install libusb-devel-static
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Последняя версия libusb-devel-static уже установлена.
0 будет обновлено, 0 новых установлено, 0 пакетов будет удалено и 17 не будет обновлено.


Пробовал ставить libusb из исходников. Не сказал бы, что это решило проблему.
Пробовал ставить из rpm - дошел до зависимости rpmlib(filedigests), которую я не нашел как победить.
Пробовал уже от отчаянья кидать вручную кидать в папку с программой usb.h, скачанный с интернета - программа его находит, но с ним собираться отказывается.

Подскажите, куда что еще сделать можно с этой проблемой?

Благодарю!

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 30 503
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: SmartCardReader | Ase.h:20:17: fatal error: usb.h:
« Ответ #1 : 15.07.2015 17:44:59 »
Это вы модуль ядра пытетесь собрать, или пользовательсккю программу?

Оффлайн PIKNIK

  • Завсегдатай
  • *
  • Сообщений: 10
Re: SmartCardReader | Ase.h:20:17: fatal error: usb.h:
« Ответ #2 : 15.07.2015 17:58:33 »
Драйвер. Просто собирает пару файликов и кладёт их в определённый каталог. Не модуль - 100%

Вот еще: в readme написано следующее:
Спойлер
2) The ifd-AseIIIeUSB driver uses the libusb library to access USB devices.
It can be downloaded from:

http://libusb.sourceforge.net/

You need to install this library and in particular its usb.h file which is
needed in the driver's compilation under GNU/Linux

Сейчас еще раз воспроизведу сборку и скину Вам результат.

---

Скачал с сайта libusb-1.0.19.tar.bz2, распаковал, собрал, но при попытке собрать драйвер - та же ошибка.
« Последнее редактирование: 15.07.2015 18:05:34 от PIKNIK »

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 30 503
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: SmartCardReader | Ase.h:20:17: fatal error: usb.h:
« Ответ #3 : 15.07.2015 18:07:06 »
Посмотрите, как этот пакет собирается и что ему надо

http://packages.altlinux.org/uk/Sisyphus/srpms/epsoneplijs/patches
« Последнее редактирование: 15.07.2015 18:13:12 от ruslandh »

Оффлайн PIKNIK

  • Завсегдатай
  • *
  • Сообщений: 10
Re: SmartCardReader | Ase.h:20:17: fatal error: usb.h:
« Ответ #4 : 15.07.2015 18:22:45 »
Да. Благодарю за исправление... у меня чуть мозг не вылетел.


----

Собирается в меру неплохо:

Спойлер
[root@1 epsoneplijs-0.4.1]# ./configure
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for OS USB support... Linux 3.14.41 ... seems good.
checking for libusb... no
checking for OS 1284 support... OS doesn't seem to have IEEE 1284 support
checking for libieee1284... no
checking for null transport... yes
checking for solaris-specific requirements... no
checking for ranlib... ranlib
checking for a BSD-compatible install... /bin/install -c
configure: creating ./config.status
config.status: creating Makefile
config.status: creating ijs-config
config.status: executing default commands
[root@1 epsoneplijs-0.4.1]# make
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o ijs_server_epsonepl.o ijs_server_epsonepl.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o ijs_server.o ijs_server.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o ijs.o ijs.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_job_header.o epl_job_header.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_page_header.o epl_page_header.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_page_footer.o epl_page_footer.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_job_footer.o epl_job_footer.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_print_stripe.o epl_print_stripe.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_poll.o epl_poll.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_compress.o epl_compress.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_write.o epl_write.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_bid_utils.o epl_bid_utils.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_bid_replies.o epl_bid_replies.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_status.o epl_status.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_time.o epl_time.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_utils_kusb.o epl_utils_kusb.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_57interpret.o epl_57interpret.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_59interpret.o epl_59interpret.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_62interpret.o epl_62interpret.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes   -c -o epl_utils_null.o epl_utils_null.c
gcc -DHAVE_KERNEL_USB_DEVICE    -DHAVE_NULLTRANS -g -O2 -Wall -ansi -pedantic -Wmissing-prototypes -o ijs_server_epsonepl ijs_server_epsonepl.o ijs_server.o epl_job_header.o epl_page_header.o epl_page_footer.o epl_job_footer.o epl_print_stripe.o epl_poll.o epl_compress.o epl_write.o epl_bid_utils.o epl_bid_replies.o epl_status.o epl_time.o epl_utils_kusb.o   epl_57interpret.o epl_59interpret.o epl_62interpret.o epl_utils_null.o         ijs.o 
[root@1 epsoneplijs-0.4.1]# make install
/bin/install -c ijs_server_epsonepl -c /usr/local/bin/ijs_server_epsonepl
« Последнее редактирование: 15.07.2015 18:29:14 от PIKNIK »

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 16 277
    • Домашняя страница
    • Email
Re: SmartCardReader | Ase.h:20:17: fatal error: usb.h:
« Ответ #5 : 15.07.2015 19:39:33 »
Чем не устраивает собранный в репозиторий?
Андрей Черепанов (cas@)

Оффлайн PIKNIK

  • Завсегдатай
  • *
  • Сообщений: 10
Re: SmartCardReader | Ase.h:20:17: fatal error: usb.h:
« Ответ #6 : 16.07.2015 09:14:28 »
Добрый день!

Тем, что или я его не обнаружил, или с ним не работает.
Как пакет называется?

Или Вы про libusb? Он уже установлен.
« Последнее редактирование: 16.07.2015 09:17:59 от PIKNIK »

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 16 277
    • Домашняя страница
    • Email
Андрей Черепанов (cas@)

Оффлайн PIKNIK

  • Завсегдатай
  • *
  • Сообщений: 10
Re: SmartCardReader | Ase.h:20:17: fatal error: usb.h:
« Ответ #8 : 16.07.2015 09:54:16 »
Да, работает.
Правда поднялось только после перезагрузки (даже рестарт демона pcscd не помогал).

Сейчас еще чуть поработаю с картридером: если всё гуд - значит благодарю Вас, Уважаемые, за помощь и отменный продукт. Если нет - напишу еще проблемы чуть ниже.

Спасибо!