web-dev-qa-db-fra.com

Portage d'un PPD vers Linux à partir d'une erreur de filtre OSX?

Étant donné que mon imprimante Canon Pixma G1000 ne semble pas être prise en charge par Canon pour un pilote Linux, j'ai tenté de porter le PPD d'OSX vers Linux. Mes premières tentatives sont ici . L'imprimante n'imprime pas.

Pour porter ce pilote, les étapes que j'ai effectuées incluent l'extraction du fichier PPD du fichier .dng Mac OSX, la suppression des entrées spécifiques à osx, notamment Attribute "APPrinterPreset". J'ai changé les filtres des versions MacOSX en rastertocanonij et cmdtocanonij2 après avoir compilé et installé ces filtres depuis le c source nijfilter2 . J'ai ensuite créé le fichier .drv et "compilé" un nouveau ppd.

Malheureusement, le message d'erreur affiché par cups est "le filtre ne fonctionne pas". En définissant le niveau de journalisation des coupes au débogage, j'ai trouvé les erreurs suivantes:

D [24/Apr/2017:23:22:40 +0530] [Job 38] 4 filters for job:
D [24/Apr/2017:23:22:40 +0530] [Job 38] envp[9]="PATH=/usr/lib/cups/filter:/usr/bin:/usr/sbin:/bin:/usr/bin"
I [24/Apr/2017:23:22:40 +0530] [Job 38] Started filter /usr/lib/cups/filter/bannertopdf (PID 26026)
I [24/Apr/2017:23:22:40 +0530] [Job 38] Started filter /usr/lib/cups/filter/pdftopdf (PID 26027)
I [24/Apr/2017:23:22:40 +0530] [Job 38] Started filter /usr/lib/cups/filter/gstoraster (PID 26028)
I [24/Apr/2017:23:22:40 +0530] [Job 38] Started filter /usr/lib/cups/filter/rastertocanonij (PID 26029)
D [24/Apr/2017:23:22:40 +0530] [Job 38] PID 26029 (/usr/lib/cups/filter/rastertocanonij) stopped with status 255 (Unknown error 155)
D [24/Apr/2017:23:22:40 +0530] [Job 38] PID 26026 (/usr/lib/cups/filter/bannertopdf) exited with no errors.
D [24/Apr/2017:23:22:40 +0530] [Job 38] PID 26027 (/usr/lib/cups/filter/pdftopdf) exited with no errors.
D [24/Apr/2017:23:22:40 +0530] [Job 38] envp[9]=\"PATH=/usr/lib/cups/filter:/usr/bin:/usr/sbin:/bin:/usr/bin\"
D [24/Apr/2017:23:22:40 +0530] [Job 38] PID 26028 (/usr/lib/cups/filter/gstoraster) exited with no errors.
E [24/Apr/2017:23:22:40 +0530] [Job 38] Job stopped due to filter errors; please consult the error_log file for details.
D [24/Apr/2017:23:22:42 +0530] [CGI] envp[9] = "PATH=/usr/lib/cups/filter:/usr/bin:/usr/sbin:/bin:/usr/bin"
D [24/Apr/2017:23:22:42 +0530] [CGI] cgiSetArray: job_printer_state_message[0]=\"Filter failed\"

Il n'y a eu aucune erreur de compilation lors de la création des filtres cups. Je ne sais pas où est l'erreur dans les filtres, ni si cette imprimante est incompatible avec ces filtres, ni s'il y a un problème dans le fichier ppd.

Comment dois-je procéder pour que mon imprimante fonctionne sous Ubuntu? Veuillez ne pas me demander de demander à Canon de le soutenir. Je les ai déjà contactés via l'assistance et Twitter. Ils ne semblent pas enclins à le faire.

1
Joel G Mathew

Je réponds à ma propre question depuis que j'ai récemment trouvé la solution à l'énigme résultant de la réticence de Canon à fournir des pilotes Linux natifs. J'ai demandé comment porter des pilotes depuis OSX car il n'y avait pas de pilotes natifs disponibles.

Les options pour une personne essayant d'installer les G1000 et G2000 de Canon sont limitées aux suivantes:

  1. Compilez et installez gutenprint. Gutenprint, anciennement nommé Gimp-Print, est une suite de pilotes d'imprimante pour Linux. Il fonctionne comme les pilotes natifs et prend en charge l'impression basée sur les tasses.

  2. Achetez un pilote et un utilitaire d'impression Linux tiers, appelé Turboprint. Il a également un excellent support. Un bonus supplémentaire est une interface graphique pour vérifier la mise en file d'attente de l'imprimante et configurer diverses options telles que le type de papier, la résolution, etc. Le coût d'une licence individuelle est supérieur à 34 $.

Si vous décidez d'utiliser la première solution, les étapes incluent les suivantes. Mon système est un Ubuntu Xenial 64bit.

Vous avez d'abord besoin d'en-têtes de développement. Ajoutez donc à vos sources.énumérez les lignes suivantes si vous ne les avez pas. Modifiez-les en fonction de votre version de Linux (Debian/Ubuntu):

deb http://jp.archive.ubuntu.com/ubuntu/ xenial-proposed main restricted universe multiverse 
deb-src http://jp.archive.ubuntu.com/ubuntu/ xenial-proposed main restricted universe multiverse 

Mettez à jour vos sources et installez les dépendances de build:

Sudo apt update
Sudo apt-get build-dep cups-common gimp-gutenprint libgutenprint-dev
Sudo apt-get install build-essential

Téléchargez maintenant le package de version source pour gutenberg (version> = 5.2.13) depuis Sourceforge .

wget https://sourceforge.net/projects/gimp-print/files/gutenprint-5.2/5.2.13/gutenprint-5.2.13.tar.bz2/download
tar xvf download
cd gutenprint-5.2.13

Clonez alternativement le dépôt git.

git clone https://git.code.sf.net/p/gimp-print/source gimp-print-source
cd gimp-print-source

Maintenant, configurez, créez et installez.

./configure
make 
Sudo make install

Source: Mon article de blog

0
Joel G Mathew

Turboprint a publié son support pour Canon G1000 en avril 2017. J'ai également mis à jour ma question .

1
betauli