運行環(huán)境:
- 內(nèi)核版本:2.6.23.1-42.fc8
- OS:fedora8、redhat9
- 平臺:PC
實現(xiàn)步驟:
1、安裝libusb(版本0.1.12)。默認生成在/usr/local/lib目錄下。
2、安裝pcsc-lite,它是獨立于設備的API,基于pc/sc規(guī)范,可以通過這些接口訪問智能卡。在此用的版本為pcsc-lite-1.4.99,安裝步驟
- ./configure(配置編譯環(huán)境)
- Make(編譯生成libpcsclite.a和libpcsclite.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(配置編譯環(huán)境)
- Make(編譯生成libpcsclite.a和libpcsclite.so)
- Make install
CC是定義編譯工具,默認為gcc, 在此要保證你的系統(tǒng)中裝有arm-linux-gcc交叉編譯環(huán)境;--host定義編譯程序的運行平臺,默認為PC-linux,在此我們要在arm下運行,所以改為arm-linux;由于系統(tǒng)中沒有libusb故用disable.若有此庫可不寫。
編譯生成pcsclite的動態(tài)庫(.so)和靜態(tài)庫(.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 閱讀(6568)
評論(5) 編輯 收藏 引用 所屬分類:
SmartCard