移植智能卡/读卡器系列驱动(libusb、pcsc-lite、pcsc_tools、ccid)到嵌入式ARM开发板上

本文详细介绍了在嵌入式系统中,如何使用arm-linux-gnueabi-gcc编译器,从源码编译libusb、pcsc-lite、ccid和pcsc-tools等智能卡驱动和工具的过程,包括下载源码、配置编译参数、修改配置文件、编译和安装等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

这里安装目录统一用同一个,不然会有问题,这里统一为安装到/usr/ccid下(有些同学可能是公司的服务器,没有权限安装到/usr目录下,那就安装在你本地,如${PWD}/ccid,然后记得要确认pcsc-lite和ccid源码包里的config.h文件某些定义的路径是否是对的,后面具体会讲)

一、编译libusb

下载地址:https://github.com/libusb/libusb/releases/tag/v1.0.21

1)tar jxvf libusb-1.0.21.tar.bz2

2)./configure CC=arm-linux-gnueabi-gcc  host=arm-linux --prefix=/usr/ccid 

3)make

4) make install

 

二、编译pcsc-lite

下载地址:https://alioth-archive.debian.org/releases/pcsclite/pcsclite/1.8.11/

1)tar jxvf pcsc-lite-1.8.11.tar.bz2

2)./configure CC=arm-linux-gnueabi-gcc --host=arm-linux --prefix=/usr/ccid --disable-libudev --enable-libusb LIBUSB_LIBS="-L /usr/ccid/lib -lusb-1.0" LIBUSB_CFLAGS=-I /usr/ccid//include/libusb-1.0 --enable-static

3)make

4)修改config.h文件里的PCSCLITE_HP_DROPDIR,定义为 "/usr/ccid/lib/pcsc/drivers"

5)make

6)make install

 

三、编译ccid

下载地址:https://alioth-archive.debian.org/releases/pcsclite/ccid/1.4.15/

1)tar jxvf ccid-1.4.15.tar.bz2

2)./configure CC=arm-linux-gnueabi-gcc --host=arm-linux --prefix=/usr/ccid/ --enable-libusb LIBUSB_LIBS="-L /usr/ccid/lib -lusb-1.0" LIBUSB_CFLAGS=-I/usr/ccid//include/libusb-1.0 PCSC_LIBS="-L /usr/ccid/lib -lpcsclite" PCSC_CFLAGS=-I/usr/ccid/include/PCSC --enable-usbdropdir=/usr/ccid/lib/pcsc/driver

3)make

4)修改PCSCLITE_HP_DROPDIR。 定义为 "/usr/ccid/lib/pcsc/driver"

5)make

6)make install

 

四、编译pcsc-tools

下载地址:http://ludovic.rousseau.free.fr/softwares/pcsc-tools/

1)tar jxvf pcsc-tools-1.5.4.tar.bz2

2)./configure CC=arm-linux-gnueabi-gcc --host=arm-linux --prefix=/usr/ccid/PCSC_LIBS="-L /usr/ccid/lib -lpcsclite" PCSC_CFLAGS=-I/usr/ccid/include/PCSC

3)make

4)make install

 

五、测试

1)/usr/ccid/sbin/pcscd &

2)运行/usr/ccid/bin/pcsc_scan,能识别到智能卡设备,并读出ATR。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值