"Error-Client-Not-Possible"
This error message will be raised by CUPS during the printer installation, as the name formerly used by Canon for its CUPS backend: namely cnij_usb, does not conform to the CUPS standard (RFC 3986), as it contains an underscore character "_" in its name.
Older version of CUPS did not reject this, but this is filtered out now in recent CUPS releases, available on recent Linux distributions.
Canon has released a fix for that, and has renamed the backend: cnijusb simply throwing out the underscore character.
This new backend is only available in the 3.00 release of the Canon drivers, in the package:
cnijfilter-common_3.00-1_i386
cnijfilter-common_3.00-1_i386
This package is one of the 2 packages to install for a PIXMA printer.
You can get this package on canon-asia web site, for e.g. the MP638. Simply install it (no need to unistall a previous package, it will override it), it can be used along for instance with the 2.80 driver (for MP610) or 2.70 (for MP600) Canon printer specific package (cnijfilter-mpXYZ_2.80-1_i386).
Choose the .deb or .rpm package according to your distribution.This is good news anyway: Canon is following the Linux move, and bring the necessary updates to its Linux software accordingly.