随笔-80  评论-22  文章-0  trackbacks-0
 

运行环境

  • 内核版本:2.6.23.1-42.fc8
  • OSfedora8redhat9
  • 平台:PC

实现步骤:

1、安装libusb(版本0.1.12)。默认生成在/usr/local/lib目录下。

2、安装pcsc-lite,它是独立于设备的API,基于pc/sc规范,可以通过这些接口访问智能卡。在此用的版本为pcsc-lite-1.4.99,安装步骤

  • ./configure(配置编译环境
  • Make(编译生成libpcsclite.alibpcsclite.so
  • Make install

Make生成的.a.so文件默认在/usr/local/lib, 运行file *,可以看到:



3、检查/usr/lib/pcsc/目录下是否有读卡器驱动,若没有,安装驱动ccid(此版本为1.3.6)。默认生成在/usr/local/pcsc目录下

4、安装完成后,可以运行src/目录下的testpcsc程序测试PC-linux平台下与智能卡是否可以通讯。注意要先启动pcscd 程序,然后再运行./testpcsc

编译测试程序如果出错,则须将/usr/locate/lib 加入到/etc/ld.so.conf文件中,别忘了ldconfig.

测试程序运行正确如图:

 


5、将
该测试程序移植到
arm-linux平台下,需用交叉编译工具重新编译:

  • CC=arm-linux-gcc /configure –host=arm-linux –disable-libusb(配置编译环境
  • Make(编译生成libpcsclite.alibpcsclite.so
  • Make install

CC是定义编译工具,默认为gcc, 在此要保证你的系统中装有arm-linux-gcc交叉编译环境;--host定义编译程序的运行平台,默认为PC-linux,在此我们要在arm下运行,所以改为arm-linux;由于系统中没有libusb故用disable.若有此库可不写。

编译生成pcsclite的动态库(.so)和静态库(.a)同样在/usr/local/lib下可以找到,此时运行命令file *,可以看到:




附:
PCSC卡在linux下的驱动(PCSC-Lite, CCID driver):http://pcsclite.alioth.debian.org/
libusb库下载地址:http://libusb.wiki.sourceforge.net/

posted on 2009-07-17 13:36 Bluesea 阅读(5413) 评论(5)  编辑 收藏 引用 所属分类: SmartCard

评论:
# re: [原]Linux下pc/sc接口的实现 2010-03-16 16:39 | whty
请问下您的联系方式好吗 QQ号就行了 我的邮箱zhouh@whty.com 我有问题询问您 不知道您看的到吗  回复  更多评论
  
# re: [原]Linux下pc/sc接口的实现 2011-12-12 02:55 | MargueriteMckay
Do you understand that this is correct time to get the <a href="http://goodfinance-blog.com/topics/credit-loans">credit loans</a>, which can help you.   回复  更多评论
  
# re: [原]Linux下pc/sc接口的实现 2011-12-22 09:46 | 锋锋
你好,你交叉编译的pcsc-lite版本是多少,我用1.2.0 的版本交叉编译会报错,求指教!!!!  回复  更多评论
  
# re: [原]Linux下pc/sc接口的实现 2012-01-04 16:10 | Bluesea
1.2.0的版本太老了吧 09年的时候1.4的就出来了 现在估计有更新的了@锋锋
  回复  更多评论
  
# re: [原]Linux下pc/sc接口的实现 2016-03-14 16:55 | lejay
你好,我安装好pcsc-lite之后/usr/lib下面并没有pcsc目录,testpcsc测试程序在哪呢?  回复  更多评论
  

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理