INSTALL   [plain text]


Installation from source:

get the ccid-x.y.z.tar.gz archive and do:

$ tar xzvf ccid-x.y.z.tar.gz
$ cd ccid-x.y.z
$ ./configure
$ make
$ sudo make install

By default pcscd and my ccid driver use /usr/local/pcsc/drivers/ as
directory for hotplug drivers. The ./configure script try to get the
directory used by pcscd using 'pkg-config libpcsclite --variable=usbdropdir'
So you should not have to use the --enable-usbdropdir=DIR argument.

udev use

It is possible to configure the driver to use udev events so that pcscd
will not poll the USB bus every second. Use:

$ ./configure --enable-udev
$ make

You will then have to install the udev rules file in the correct
directory. It could be something like:

$ sudo cp src/pcscd_ccid.rules /etc/udev/rules.d/

On FreeBSD you can also use --enable-udev and add the following rules to
devd.conf (thanks to Tilman Linneweh for the info)

attach 100 {
	device-name "ugen[0-9]+";
	action "/usr/sbin/pcscd -H";

detach 100 {
	device-name "ugen[0-9]+";
	action "/usr/sbin/pcscd -H";

libusb not found

If the ./configure script says something like:
  configure: error: usb.h not found, use --enable-libusb=PATH
You should use --enable-libusb=PATH to tell ./configure where to find
the usb.h and files. The ./configure script will use
PATH/include/ to search for usb.h and PATH/lib/ to search for

building serial reader driver

A serial CCID reader can also be connected on a serial port. By default
the serial driver is not built. You must explicitely do:

$ ./configure --enable-twinserial
$ make
# make install

builing serial reader driver only

It is possible to generate the driver for the GemPC Twin using serial
communication only (for example on an embedded system without USB).
Just do:
$ ./configure --enable-twinserial --disable-libusb
$ make
# make install

By default ./configure try to get the directory used by pcscd using
'pkg-config libpcsclite --variable=usbdropdir' and add '/serial'.
You should not have to use --enable-ccidtwindir=DIR to specify the
target directory to use. 

configuring the driver for the serial reader

You have to create or edit the file /etc/reader.conf. The file should
contain something like:

# Gemplus reader with serial communication
#  - reader is the reader name. It is needed for multi-slot readers.
#    Possible reader values are: GemPCPinPad, GemCorePOSPro, GemCoreSIMPro,
#    GemPCTwin (default value)
# example: /dev/ttyS0:GemPCPinPad
#FRIENDLYNAME      "GemPCTwin serial"
#DEVICENAME        /dev/ttySn[:reader]
#CHANNELID         1

FRIENDLYNAME      "GemPC Twin serial"
DEVICENAME        /dev/ttyS0
LIBPATH           /usr/local/pcsc/drivers/serial/
CHANNELID         1

You will have to adapt the library path to your configuration and library

By default the GemPC Twin serial reader parameters are loaded by the
driver, if you use a GemPC PinPad, a GemCore POS Pro or a GemCore SIM
Pro you have to indicate it in the DEVICENAME field. You will then have
something like:
DEVICENAME        /dev/ttyS0:GemPCPinPad

/dev/ttyS0 (DEVICENAME field) is the first serial port under Linux
(known as COM1 under DOS/Windows). Of course if your reader is connected
to another serial port you have to adapt that.

Binary installation:

Contact your distribution support.

Test procedure:

- check the reader is supported by the driver.
  Get your reader USB identification using the lsusb(1) command:
  $ lsusb
  Bus 001 Device 048: ID 08e6:4433 Gemplus

  Look for 08E6 (ifdVendorID) and 4433 (ifdProductID) in
  Of course your numbers will be different.

  If you can't find them add them (if you know what you do) and/or mail me.

- (re)start pcscd with debug on stdout. Simply do 'pcscd --debug stdout'
  (you will need to have root priviledges). And look for:
  readerfactory.c:1319 RFInitializeReader: Attempting startup of ReaderName
  readerfactory.c:1061 RFBindFunctions: Loading IFD Handler 2.0
  ifdhandler.c:76 Entering IFDHCreateChannel (lun: 0)
  ccid_usb.c:131 Manufacturer: Ludovic Rousseau (
  ccid_usb.c:139 ProductString: Generic CCID reader v0.1.0
  ccid_usb.c:143 Copyright: This driver is protected by terms of the GNU General Public License version 2, or (at your option) any later version.
  ccid_usb.c:223 Found Vendor/Product: 08E6/4433 (GemPC433 SL)
  ccid_usb.c:224 Using USB bus/device: 001/047

  If you don't see this the driver is not installed correctly or your
  reader is not yet supported. Read to know
  what to do.

$Id: INSTALL 3001 2008-06-14 16:15:11Z rousseau $