Suite à un besoin de pouvoir imprimer avec mon imprimante canon pixma mp 240 à partir d'une ubuntu 10.4 64 bits, je me lance dans la rédaction de cette article afin d'aider les potentiels utilisateurs.

1ere méthode en passant par une ancienne librairie libcupsys2

Dans un premier temps, il vous faudra télécharger le driver sur le site de Canon :

http://fr.software.canon-europe.com/download.asp

Une fois le fichier MP240_debian_drivers.tar téléchargé, dézipper le pour avoir les paquets *.deb visibles. ( dezipper une fois, puis une seconde fois sur l'archive générée MP240_debian_printer

A ce stade l'installation n'est pas possible car le système vous indiquera qu'il vous manque la librairie libcupsys2. Même si elle est présente comme dépendance de libcups2, cela ne résoud rien. Il faudra donc l'installer à part. Pour ce faire, télécharger la librairie à l'url suivante : http://packages.ubuntu.com/jaunty/all/libcupsys2/download

Puis installer là via la commande :

sudo dpkg -i libcupsys2_1.3.9-17ubuntu3.6_all.deb

Comme je suis sur une architecture 64 bits, je vais forcer l'installateur à depackager l'archive compilée sous 32 bits.

Ouvrez un terminal et saisissez les commandes suivantes pour installer la librairie common :

sudo dpkg -i --force-architecture cnijfilter-common_3.00-1_i386.deb

Puis installer le driver via la commande suivante :

sudo dpkg -i --force-architecture cnijfilter-mp240series_3.00-1_i386.deb

Et voilà l'imprimante est installée. Vous pouvez même vous payer le lux d'installer le driver du scanner après avoir dézipper le .tar de l'archive :

D'abord le fichier common :

sudo dpkg -i --force-architecture scangearmp-common_1.20-1_i386.deb

Puis le driver

sudo dpkg -i --force-architecture scangearmp-mp240series_1.20-1_i386.deb

Voilà, la config est installée.

2nde méthode en repackageant les .deb en utilisant libcups2

Cette technique consiste à modifier la dépendance des pacquets en utilisant libcups2 au lieu de l'ancienne librairie libcupsys2.

La technique consiste a dépackager l'archive, corriger la dépendance et repackager l'archive.

Voici les ligens de commandes utiles

1ere archive :

dpkg-deb -x cnijfilter-common_3.00-1_i386.deb common
dpkg-deb --control cnijfilter-common_3.00-1_i386.deb
cd DEBIAN/
gedit control

Dans le fichier ouvert, remplacer libcupsys2 par libcupsys

Sauvegarder.

cd..

mv DEBIAN/ common

dpkg -b common cnijfilter-common_3.00-1_i386.deb

2nde archive :

dpkg-deb -x cnijfilter-mp240series_3.00-1_i386.deb common
dpkg-deb --control cnijfilter-mp240series_3.00-1_i386.deb

cd DEBIAN/
gedit control

Dans le fichier ouvert, remplacer libcupsys2 par libcupsys

Sauvegarder.

cd..

mv DEBIAN/ common


dpkg -b common cnijfilter-mp240series_3.00-1_i386.deb

C'est bon, il n'ya plus qu'à installer les libs.

sudo dpkg -i --force-architecture cnijfilter-common_3.00-1_i386.deb
sudo dpkg -i --force-architecture cnijfilter-mp240series_3.00-1_i386.deb