I have this USB smart card reader EZ100PU by Castles, issued by my bank. There is a driver, albeit 32-bit for Linux.
Following the driver manual and some sites about pcscd drivers, I’ve placed the driver in /usr/lib64/readers. Starting pcscd naturally complained about wrong driver ELF class (32-bit).
Then I installed the 32-bit compatiblity package for pcscd via Yast. Running pcscd resulted with same error. Then I placed the driver bundle in /usr/lib/readers, but pcscd would not start, missing drivers in /usr/lib64/readers. So I made a symlink from /usr/lib64/readers/ into /usr/lib/readers, directly to the driver itself, and now I can start pcscd without it complaining.
But the reader does not work. When I plug it in, kernel sees the USB device allright (it did so even before the drivers), but pcscd apparently doesn’t. When I insert a card in it, nothing happens in logs or dmesg, and the red led is not flashing, as it should (rtfm also takes red flashing led as successful test).
Any ideas? Am I using pcscd wrongly? I am, after all, trying to use 32-bit drivers on 64-bit OS.
I’ve figured out part of the problem. Apparently, pcscd must be compiled with libusb and not libhal, which is the case for default package.
So I managed to compile 32-bit pcscd package from source rpms, but when I try to install it with rpm, it complains that the 64-bit version (currently installed) is required by other packages.
Now, I have three options:
- Remove all other dependencies
- Install both 64-bit and 32-bit versions, in that I somehow make the package install as 64-bit, and supply only 32-bit libpcslite additionally.
- Hack the thing and leave original, official binary packages from OpenSuse, and copy&paste only 32-bit libpsclite.so (which I extract from recompiled package for libusb) into /usr/lib which is what the official pcsc-lite-32bit package does.
I’d prefer option #2, since that’s the “OpenSuse” way, but I don’t know how to. I suppose I’ll have to make a completely new RPM from scratch that installs additionally (as pcsc-lite-32bit).
Any ideas/suggestions?
CanOfWires adjusted his/her AFDB on Wednesday 05 Aug 2009 14:56 to write:
>
> I’ve figured out part of the problem. Apparently, pcscd must be compiled
> with libusb and not libhal, which is the case for default package.
>
> So I managed to compile 32-bit pcscd package from source rpms, but when
> I try to install it with rpm, it complains that the 64-bit version
> (currently installed) is required by other packages.
>
> Now, I have three options:
> 1. Remove all other dependencies
> 2. Install both 64-bit and 32-bit versions, in that I somehow make the
> package install as 64-bit, and supply only 32-bit libpcslite
> additionally.
> 4. Hack the thing and leave original, official binary packages from
> OpenSuse, and copy&paste only 32-bit libpsclite.so (which I extract from
> recompiled package for libusb) into /usr/lib which is what the official
> pcsc-lite-32bit package does.
>
> I’d prefer option #2, since that’s the “OpenSuse” way, but I don’t know
> how to. I suppose I’ll have to make a completely new RPM from scratch
> that installs additionally (as pcsc-lite-32bit).
>
> Any ideas/suggestions?
>
>
Why not just compile the 64bit with usb support?
You use the same code just build it and you should by default have a 64bit
one, or am I not awake enough this morning and have not read your post
correctly ( not unusual for me )

HTH
Mark
Caveat emptor
Nullus in verba
Nil illegitimi carborundum