-
Notifications
You must be signed in to change notification settings - Fork 1
/
README
932 lines (746 loc) · 40.3 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
Welcome to Gutenprint 5.3.5-pre1! Please read these notes carefully.
*** NOTE TO PACKAGERS: Please read the file README.package for issues
that are of interest to distributors and packagers of Gutenprint.
It is not necessary for end users of Gutenprint to read this file.
================================================================
I) INTRODUCTION
Gutenprint is a suite of printer drivers for UNIX, Linux, and other
systems that use CUPS as their printing system. Gutenprint
currently supports over 3000 printers. It also includes an enhanced
Print plug-in for GIMP that replaces the print plug-in packaged with
the GIMP distribution.
Gutenprint was renamed from its original name of Gimp-Print in
order to clearly distinguish it from GIMP. While this package
started out as the Print plugin for GIMP, it has expanded into a
collection of general purpose printer drivers, and the enhanced
Print plugin for GIMP is now only a small part of the package.
Furthermore, the name Gutenprint recognizes Johannes Gutenberg,
the inventor of the movable type printing press. Finally, the
word "guten" means "good" in German.
Please read the user's manual (doc/gutenprint-users-manual.pdf)
carefully, as it covers much more information than this README
file. In addition, please read the release notes (NEWS), as it
has information on the latest changes.
Gutenprint supports only the printer part of multi-function
devices (devices that typically include scanning, copying, and fax
capabilities).
We recommend that all users who wish to use this package for
general purpose printing use CUPS. CUPS provides an excellent
web-based interface for easy printer administration, and all
CUPS-enabled applications (OpenOffice.org, all KDE apps, etc.) and
printing dialogs (kprinter, xpp, etc.) show all the options in
easy to use GUIs. Please visit http://www.cups.org/ for
information on downloading and installing CUPS.
================================================================
II) INSTALLATION
This section is provided for people installing the package from
source. If you are installing from a pre-compiled package (such
as the Macintosh OS X package, or a package provided by your
distribution vendor), you may skip this section.
Installing packages from source requires some level of system
administration skills along with superuser privileges. Superuser
privilege allows you to perform actions that may be damaging to
your system. If you are not comfortable with the material
discussed here and in the release notes, or with performing simple
administrative actions, we recommend that you not attempt to
install this package from source.
If you are building Gutenprint from the git repository, you need
to take some additional steps. Please read doc/README.maintaining
for instructions on how to build directly from git.
Before beginning, please read the release notes carefully for any
updates.
----------------
A) OVERVIEW
Gutenprint includes the following primary components:
- The core driver library (required for everything else)
- A CUPS (Common UNIX Printing System) driver
- A CUPS backend, required for selected dye-sublimation printers
- A command-line utility to administer and maintain Epson
printers
- An enhanced Print plug-in for GIMP
- GTK2-based UI libraries (used by the enhanced GIMP plug-in)
This package requires the use of GNU Make to compile. On systems
with both GNU make and another make installed, GNU make may be
named `gmake' or `gnumake'. BSD users in particular must take
care to use 'gmake'.
The general procedure to build Gutenprint is as follows:
./configure [options]
make
make install
The "configure" script, which must be run before doing anything
else, controls which of these components are built along with any
options desired. This script determines what software is
installed on your system and what components will be compatible
with it, and prepares the package to be built and installed. If
the script emits any warnings or errors, please be certain that
you understand them before proceeding.
After the configure script has completed its work, it will print
a summary of its choices. Please ensure that it is correct before
proceeding. The summary looks like this:
Configuration Summary:
------------- --------
If you have any problems, please report the information below to
================================================================
Release: gutenprint 5.3.3 generated on 25 Aug 2019
Generated at Sun Aug 25 11:11:14 EDT 2019 by rlk
Features:
Build CUPS: yes, installing in /usr
Build CUPS 1.2 enhancements: yes
Build CUPS PPD files: no
Generate PS level 3 CUPS PPD files: yes
Build genppd statically: yes
Build CUPS dyesub USB backend: yes
Build EPSON inkjet utility: yes
Build enhanced Print plugin for GIMP: yes
GIMP plugin will be named: gutenprint
Install plugin(s) in home directory: no
Build test programs: yes
Build testpattern generator: yes
Installation summary:
Installation prefix: /usr/local
Exec prefix: /usr/local (${prefix})
Data directory: /usr/local/share/gutenprint
Library directory: /usr/local/lib64/gutenprint (${exec_prefix}/lib64/gutenprint)
Executable directory: /usr/local/bin (/usr/local/bin)
XML data directory: /usr/local/share/gutenprint/5.3/xml
Module directory: /usr/local/lib64/gutenprint/5.3/modules (${exec_prefix}/lib64/gutenprint/5.3/modules)
Install sample images: yes
General configuration:
Configure arguments: --enable-maintainer-mode
Compiler: gcc
Compiler Version: gcc version 7.4.1 20190725 [gcc-7-branch revision 273795] (SUSE Linux)
Compiler options: -Disfinite=finite -O3 -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wwrite-strings -Werror-implicit-function-declaration -Winline -Wformat=2 -finline-limit=131072 -Wformat -Werror=format-security -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -std=c99 -pedantic -Waggregate-return -Wcast-qual -Wshadow -Wredundant-decls
Build static libraries: yes
Build shared libraries: yes
Maintainer mode: yes
Use i18n: yes
Generate profiling information: no
Generate debugging symbols: no
Use modules: static
Use readline libraries: yes, extra arguments: -lncurses
uname -a output: Linux dsl092-065-009 4.12.14-lp151.28.13-default #1 SMP Wed Aug 7 07:20:16 UTC 2019 (0c09ad2) x86_64 x86_64 x86_64 GNU/Linux
================================================================
The CUPS and GIMP components require that the appropriate packages
be installed on your system. Many distribution vendors separate
packages into runtime and development packages. The development
packages are required in order to successfully compile Gutenprint.
In many cases the configure script cannot detect whether these
development packages are installed, in which case you will get an
error during compilation. Also note that it is necessary for the
versions of the development packages to match exactly the versions
of the runtime packages they are related to.
PLEASE INSPECT THE OUTPUT CAREFULLY BEFORE PROCEEDING. If you
expect to build a particular component (particularly the CUPS
driver, CUPS backends, or enhanced Print plugin for GIMP), and
the configure output states that that component will not be built,
please make certain that you have the required development packages
installed, as described below in the sections for the particular
components.
----------------
B) CORE DRIVER LIBRARY
The core driver library, which is always built, contains all of
the printer drivers comprising the Gutenprint package. When the
package is built, it consists of a core library (libgutenprint), a
set of XML files, and depending upon the options selected,
additional libraries containing the drivers for each family of
printers.
By default dynamically loadable modules (plug-ins) will be built
for the family drivers, and loaded at run-time if your operating
system supports it. If you experience problems,
--with-modules=dlopen or --with-modules=ltdl may be used to select
the module loading method (dlopen is the default, but GNU libltdl
is more portable), or --with-modules=static or --without-modules
disables them. If you wish to compile Gutenprint entirely
statically (with no use of shared libraries), you may use the
option --disable-shared.
----------------
C) CUPS
Gutenprint is normally used as a driver under CUPS (Common UNIX
Printing System). Full description of CUPS is beyond the scope of
this README file; full information may be found at
http://www.cups.org. Gutenprint 5.3 requires CUPS 1.1.9 or
higher. We recommend use of 1.1.15 or above; that release of CUPS
fixes some important bugs. Gutenprint supports CUPS 1.2, and
supports the CUPS 1.2 enhancements, including dynamic PPD file
generation.
Gutenprint will fail to configure if the necessary CUPS
development packages are not installed. This is to protect users
against attempting to install newer versions of Gutenprint without
installing the CUPS development package. This results in an
installation that does not work with CUPS, which has created
confusion in the past.
Normally, you should install the CUPS development package, which
on most systems is "cups-devel", "cups-dev", or similar, using
your operating system's package manager.
If you really want to install Gutenprint without CUPS, you may run
configure with "--without-cups". This may be useful if you intend
to use only the Gutenprint plugin for GIMP, or you intend to use
the Gutenprint library to support a custom printing solution that
does not involve CUPS. However, for most users, simply running
configure --without-cups is not the correct course of action.
If Gutenprint thinks it has detected a correct installation of
CUPS, but that installation is in fact not correct, you will get
errors when you compile the package. The errors will typically
look like this; the important error is "cups/cups.h: No such file
or directory" (other ".h" files may also be missing, depending
upon the missing packages):
make[3]: Entering directory `/opt/gutenprint/gutenprint-5.3.0-pre2/src/cups'
gcc -DHAVE_CONFIG_H -I. -I../.. -I../../include -I../../include
-Wall -Wcast-align -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wnested-externs -Wwrite-strings
-Werror-implicit-function-declaration -Winline -Wformat=2
-finline-limit=131072 -DCUPS_DRIVER_INTERFACE -DALL_LINGUAS='"cs da
de el en_GB es fr hu it ja nb nl pl pt sk sv zh_TW"'
-Disfinite=finite -O6 -MT gutenprint_5_3-genppd.o -MD -MP -MF
.deps/gutenprint_5_3-genppd.Tpo -c -o gutenprint_5_3-genppd.o
`test -f 'genppd.c' || echo './'`genppd.c
genppd.c:79:23: error: cups/cups.h: No such file or directory
genppd.c:80:25: error: cups/raster.h: No such file or directory
make[3]: *** [gutenprint_5_3-genppd.o] Error 1
make[3]: Leaving directory `/opt/gutenprint/gutenprint-5.3.0-pre2/src/cups'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/opt/gutenprint/gutenprint-5.3.0-pre2/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/opt/gutenprint/gutenprint-5.3.0-pre2'
make: *** [all] Error 2
Installing the CUPS driver for Gutenprint 5.3 will not interfere
with your ability to continue using the Gutenprint 5.2 or earlier
drivers.
WARNING: The "canon" and "epson" CUPS backends that previously
were distributed with Gutenprint are no longer distributed, so you
will need to ensure that none of your printer queues use these
backends. Please read the Critical Upgrade Note in the release
notes for more information and the procedure for modifying your
printer queues.
The Gutenprint CUPS driver consists of the following components:
* The core Gutenprint CUPS driver, rastertogutenprint.5.3. This
is a CUPS filter that converts CUPS raster data into
printer-specific data. This is most commonly installed in
/usr/lib/cups/filter.
* Additional utilities to send certain commands to these printers
are installed as commandtocanon and commandtoepson; they are
installed in /usr/lib/cups/filter.
* A custom backend, gutenprint53usb, to send data to certain dye
sublimation printers. Some dye sublimation printers use custom
USB protocols to send data to the printer and will not work with
the standard USB back end.
* One or more sets of PPD files describing all of the printers
supported by Gutenprint. These are normally installed in
/usr/share/cups/model/gutenprint. These PPD files can only be
used by the precise version of Gutenprint that they were built
with; for example, it is not possible to use PPD files from
Gutenprint 5.3.0-pre2 with Gutenprint 5.3.0.
If you are using CUPS 1.2 or above, these PPD files may not be
actually installed by default, depending upon your system.
Instead, a CUPS driver generates these PPD files on demand.
* A utility to update PPD files from an earlier release of
Gutenprint, cups-genppdupdate. This utility may be used to
update PPD files generated by earlier versions of Gutenprint
starting from 4.3.21, including any 5.0, 5.1, 5.2, or 5.3
release or pre-release. This is normally installed in
/usr/sbin. This utility cannot update PPD files from Gimp-Print
4.2.
* A utility to generate PPD files, cups-genppd.5.3. Normally this
is only required when the package is built, and only with CUPS
1.1.
* A driver to generate PPD files on the fly, gutenprint.5.3. This
is normally used to generate PPD files on the fly with CUPS 1.2
and above.
* A utility to permit additional color calibration for
Gutenprint-supported printers, cups-calibrate. This is normally
installed in /usr/bin.
WARNING: With certain versions of CUPS and in certain non-standard
configurations, if a new version of Gutenprint is installed
over an existing version genppd will create PPD files based on
the older version of Gutenprint rather than the newer version.
This will happen if all of the following are true:
i) The cups-config provided by the CUPS driver adds
-Wl,rpath=/usr/lib (or wherever the CUPS system libraries
live). This is done by some versions of CUPS reportedly
because in some cases the runtime linker does not pick up
libraries out of /usr/lib. This can be checked by running
cups-config --libs --ldflags
and inspecting the output for any mention of "rpath",
"RPATH", "RUN_PATH", or the like. This is controlled by
the CUPS installation on your system.
ii) There is presently a version of Gutenprint installed in
the system default, typically /usr (--prefix=/usr) rather
than /usr/local or the like. The default location of
Gutenprint installation is in /usr/local, but system
vendors typically install Gutenprint in /usr.
iii) Gutenprint is built dynamically only (--disable-static or
--disable-static-genppd). This is not standard, and
requires the explicit --disable-static or
--disable-static-genppd on the Gutenprint "configure"
command line. Therefore, if you build Gutenprint normally
you should not be vulnerable to this problem.
iv) Gutenprint is configured to build the PPD files at compile
time. This is the case when using CUPS 1.1, but is not the
case when using CUPS 1.2 unless you explicitly use
--enable-cups-ppds.
Note that in general if you install CUPS into a non-standard
location, and install Gutenprint into the same location, this
problem can surface. For example, if you choose to install
CUPS in /usr/local and Gutenprint in /usr/local you are
vulnerable to this. However, it is not standard practice to
install CUPS anywhere but /usr.
In this case, the run path embedded in the genppd executable
points to the version of Gutenprint installed in /usr/lib.
This run path overrides any attempt by libtool to look in the
build directory. The result is that cups-genppd and
rastertogutenprint are run against the older version of
Gutenprint. If the new version contains additional features
(more printers, changes to printer options, etc.) they will
not be available.
This bug is difficult to detect in a normal build. It
normally does not cause an error to happen during build unless
there is an API change from the version installed and the
version being built; the only failure is frequently that some
PPD files may not be built or may be built with missing
options. Due to the PPD version checking introduced in this
release, the behavior might manifest itself as a runtime
error. It is also possible that there will be no error at all
other than the older version of Gutenprint being used, with
the result that new features and bug fixes are not available.
If you wish to use only shared libraries, do not wish to build
static libraries at all, and are vulnerable to this issue
(because cups-config --ldflags sets the run path), there are
three workarounds available:
i) Build and install Gutenprint into /usr (rather than
/usr/local) and then rebuild Gutenprint from scratch. This
will install the correct libgutenprint.so in /usr/lib, and
in the rebuild genppd will be run against the correct
library.
ii) Remove the old version of Gutenprint prior to building the
new version of Gutenprint. The important files to remove
are anything named /usr/lib/libgutenprint*.
iii) Edit cups-config to remove the reference to the run path.
Following installation of the package with "make install", you
must restart CUPS to permit CUPS to see the new PPD files. The
exact command to restart CUPS varies; it is typically something
like systemctl restart cups (which will be the case on most modern
Linux systems), /etc/init.d/cups restart,
/etc/software/init.d/cups restart, /etc/rc.d/cups restart,
/usr/sbin/rccups, or even /etc/rc.d/init.d/cups restart.
You may optionally choose to update your existing PPD files using
the command cups-genppdupdate, after which you should restart CUPS
as described above. We strongly recommend use of this update
procedure, which is fast and simple. This script will
automatically update Gutenprint PPD files from earlier versions of
Gutenprint 5.3. It will not at present automatically upgrade PPD
files from Gutenprint 5.0, 5.1, or 5.2; if you want to do so, you
need to run cups-genppdupdate -x. This allows you to continue
running older versions of Gutenprint concurrently with Gutenprint
5.3. This script cannot update PPD files from Gimp-Print 4.2 or
non-Gutenprint PPD files.
The following options to configure are available for compiling the
Gutenprint driver for CUPS:
--enable-cups-ppds
With CUPS 1.2, it is possible to arrange for PPD files to be
generated when a new printer queue is generated rather than
having all pre-generated PPD files in the filesystem. This
saves considerable disk space and avoids the possible build
problem described above. Normally, Gutenprint detects which
version of CUPS is in use and configures itself to create the
PPD files at build time only when CUPS 1.1 is in use.
If you wish to generate the PPD files at build time, you may
use this option. If you are running CUPS 1.1, and for some
reason do not wish to generate the PPD files, you may use
--disable-cups-ppds.
--disable-translated-cups-ppds
By default, PPD files for all languages available in
Gutenprint are created. If this option is used, only the
default (US-English) PPD files are created. Distributors may
wish to package up the PPD files separately for each language.
Some systems may not build the translated PPD files correctly,
in which case all of the PPD files will be in English. If
this is the case on your system, you should use
--disable-translated-cups-ppds to avoid having many duplicate
PPD files.
--disable-globalized-cups-ppds
Starting with Gutenprint 5.2, Gutenprint builds PPD files
containing translations for all languages if CUPS 1.2 or above
is in use. This greatly reduces the number of PPD files
created or PPD file choices offered.
If you have problems with the globalized PPD files, you may
use this option to generate standard translated PPD files (or
English-only, if --disable-translated-cups-ppds is also in
use). This option only has effect if --enable-cups-ppds is
used.
--enable-simplified-cups-ppds
Gutenprint 5.3 offers an option of creating simplified PPD
files (containing only basic options and standard paper sizes)
in addition to PPD files offering all available options
(including all color correction options). If this option is
used, both the simplified and standard PPD files are created.
If --enable-simplified-cups-ppds=only is specified, only the
simplified PPD files are built.
If the new dynamic PPD file generation is used with CUPS 1.2,
the simplified PPD files are always offered.
--disable-cups-level3-ppds
By default, the Gutenprint PPD files are configured for
PostScript Level 3. If this option is used, Level 2 PPD files
are created. This may be useful if you are using a version of
CUPS older than 1.1.15. It is normally not necessary to use
this explicitly, as the configure script detects the version
of CUPS in use and selects the appropriate PostScript level
automatically.
--disable-cups-ppds-at-top-level
Normally, the PPD files are placed in
/usr/share/cups/model/gutenprint/5.3. If this option is used,
the PPD files are placed in /usr/share/cups/model. There is
normally no good reason to use this option.
--disable-static-genppd
Build genppd and rastertogutenprint dynamically linked rather
than statically linked. WARNING: Use of this option may lead
to failure during build or installation, or incorrect
installation. It is *STRONGLY* recommended that you not use
this option unless you are certain that you understand the
problem and how to work around it.
----------------
D) CUPS dye-sublimation backend
A new CUPS backend was added to support specific dye-sublimation USB
printers that require a special communications protocol. This backend is
called 'gutenprint53+usb' and currently supports the models listed below.
If you do not have a printer on this list, you may skip the remainder
of this section.
Canon SELPHY ES series
Canon SELPHY CP series
Ciaat Brava 21
Citizen CW-01 / Olmec OP900
Citizen CW-02 / OP900II
DNP DS40 / Citizen CX
DNP DS80 / Citizen CX-W
DNP DS80DX
DNP DS-RX1 / DS-RX1HS / Citizen CY / CY-02
DNP DS480
DNP DS680
DNP DS620 / DS620A / Citizen CX-02
DNP DS820 / DS820A / Citizen CX-02W
DNP QW410 / Citizen CZ-01
Fujifilm ASK-300
Fujifilm ASK-2000
Fujifilm ASK-2500
Fujifilm ASK-4000
HiTi P461 Prinhome
HiTi P510 series
HiTi P520L / P525L
HiTi P720L / P750L
Kodak Professional 1400
Kodak 305 Photo Printer
Kodak 605 Photo Printer
Kodak 805 Photo Printer
Kodak 6800 Photo Printer
Kodak 6850 Photo Printer
Kodak 7000 Photo Printer
Kodak 8800 Photo Printer
Kodak 8810 Photo Printer
Kodak 9810 Photo Printer
Mitsubishi CP30D
Mitsubishi CP-3800DW
Mitsubishi CP-9550D/DW/DW-S/DZ/DZ-S
Mitsubishi CP-9600D/DW
Mitsubishi CP-M1A / CP-M1E / CP-M15
Mitsubishi CP-9800DW/DW-S
Mitsubishi CP-9810DW
Mitsubishi CP-K60DW-S
Mitsubishi CP-D70DW / CP-D707DW
Mitsubishi CP-D70DW-S and P-D707DW-S
Mitsubishi CP-D80DW
Mitsubishi CP-D90DW
Mitsubishi CP-W5000DW
Mitsubishi P93DW
Mitsubishi P95DW
Shinko CHC-S1245 (aka Sinfonia E1)
Shinko CHC-S2145 (aka Sinfonia S2)
Shinko CHC-S6145 (aka Sinfonia CS2)
Shinko CHC-S6245 (aka Sinfonia CE1)
Sinfonia S3
Sony UP-CR10L / DNP DS-SL10
Sony UP-CX1
Sony UP-DR150
Sony UP-DR200
Sony UP-D711MD
Sony UP-DR80MD
Sony UP-D895
Sony UP-D897
Sony UP-D898
Sony UP-D971AD
Sony UP-D991AD
Stryker SDP1000
Although these printers advertise themselves as standard USB Printer
Class devices, they do not actually obey those specifications, and
require two-way handshaking in order to successfully print.
Over time, it is expected that additional printer models will be
supported by this backend; this list only includes ones that are
known to work.
NOTE: If you are upgrading from 5.2.9 (or earlier) and using one of
the following models, you will need to remove and re-create your
printer queue:
Canon SELPHY ES series (All models)
Canon SELPHY CP series (All models)
DNP DS40
DNP DS80
Sony UP-DR150
Build Requirements
This backend requires libusb (or libusbx) 1.0 or newer.
CUPS Integration
If you are using up-to-date versions of CUPS (1.6.4 or newer) on
Linux, then your system will automatically select this backend if
the you plug in one of its supported printers. No further intervention
on the your part should be necessary.
Unfortunately, if you are using an older version of CUPS or a
non-Linux system then you will probably need to manually configure
the use of this backend because the system may attempt to use the
default usb backend, which will not work properly with these
printers.
To check which backend your printers are using, run the 'lpstat
-s' command. Below is an example of its output:
device for Canon_SELPHY_ES1: gutenprint53+usb://Canon/SELPHY%20ES1?serial=221CD10131&backend=canonselphy
device for Canon_SELPHY_ES3: usb://Canon/Canon%20SELPHY%20ES3
In this example, the SELPHY ES1 is using the correct gutenprint
backend, but the ES3 is using the incorrect 'usb' backend. In
order for the ES3 to function properly, you need to configure it
to use the correct backend.
The most expedient way to accomplish this is to remove the printer
via your system's printer configuration interface, then manually
add a new one, taking care to select the correct backend
("gutenprint53+usb"). This backend name is present in the device
URI for the printer, as demonstrated in the above example. An
alternative to the system printer configuration interface is to
use your local system's CUPS web interface, if it is enabled.
Step-by-step instructions for using any of these interfaces is
beyond the scope of this document.
Once the printer is properly configured, this backend will be
automatically invoked as needed; you will never invoke the backend
directly.
Note on Use of Multiple Printers of the Same Model
If you do not use (and do not intend to use) more than one printer of
the same model connected via USB to one computer, you may skip this
section.
If you have more than one printer connected to a computer (via
separate queues), CUPS inspects each printer to determine which
printer is attached to which queue. Most printers provide a
serial number, which is different for each individual printer, to
determine which unique printer is which. Unfortunately, certain
printers do not provide this serial number, so CUPS cannot
uniquely identify each printer.
To determine if your printer model is affected, you should inspect the
CUPS queue URI, specifically the "serial=" portion. If the serial is
NONE_UNKNOWN, it indicates that the printer does not report a serial
number and so CUPS cannot uniquely that printer, if more than one of
that type is plugged in.
For example, a device URI of
gutenprint53+usb://Canon/SELPHY+ES1?serial=221CD10131&backend=canonselphy
has a proper serial number (221CD10131), and CUPS can uniquely
identify the printer.
A device URI of
gutenprint53+usb://Canon/CP-10?serial=NONE_UNKNOWN&backend=canonselphy
indicates that the printer does not report a valid serial number,
so that CUPS cannot uniquely identify the printer if there are
two or more Canon CP-10 printers attached.
If you attach more than one of any one of these printer models to
the same computer (such as two Canon CP-10 printers), you may
experience incorrect behavior, including:
* Printing (or attempting to print) to a printer other than
the desired one
* Failing to print a particular job at all
* Inability to create a queue for each printer
* Attempt to create a queue that already exists
Note on the Shinko CHC-S2145
The Shinko CHC-S2145 does not report a serial number in the traditional
sense; instead it reports a user identification string, which the backend
will use if one is configured.
The backend supports configuring this user identification string.
To do so, first disconnect all other Shinko CHC-S2145 printers from the
system, and then connect each printer individually, and run the
following command. Please ensure that the text you choose for each
printer is different.
/usr/lib/cups/backend/gutenprint53+usb -B shinkos2145 -U "sometext"
After changing the user string, you will need to remove and re-create
the CUPS queue.
----------------
E) ESCPUTIL
"escputil" is a command line utility for administering Epson
inkjet printers. It performs head alignment, retrieval of ink
levels and status information, printing of test patterns, etc. It
is built and installed by default; if you don't want it, you may
use --without-escputil when configuring.
escputil uses the readline package for interactive commands
(currently only head alignment falls into this category). Linking
against libreadline sometimes requires linking against other
packages. Gutenprint attempts to determine the correct packages
to link against; the exact sequence is described in the release
notes. If you do not wish to use readline, you may use
--without-readline.
----------------
F) GIMP
Gutenprint may be used as an enhanced Print plug-in for GIMP (2.0
and above), providing the ability to print images. Please read
the release notes in addition to this README.
The enhanced Print plugin for GIMP replaces the Gimp-Print
4.2-based plugin provided with GIMP 2.0 and 2.2. As of the GIMP
2.4, GIMP team provides a new Print plugin based on the GtkPrint
framework. This plugin provides standard printing capabilities,
but does not provide all of the new Gutenprint 5.3 features.
Therefore, the enhanced Print plugin for GIMP distributed with
Gutenprint does not replace that plugin, but is installed
alongside that plugin.
If your system separates development packages from runtime
packages, you will typically have to install development packages
for GIMP itself, in addition to Gtk and Glib. With GIMP 2.x and
GTK 2.x, additional packages may be required (typically gimp-devel
on RPM-based distributions or libgimp2.0-dev on Debian-based
ones). Failure to install these packages will lead to errors when
the package is compiled. The errors will typically look like
this; the important errors are the ones "No such file or
directory".
make[3]: Entering directory `/opt/gutenprint/gutenprint-5.3.0-pre2/src/gimp2'
gcc -DHAVE_CONFIG_H -I. -I../.. -I../../include -I../../include
-Wall -Wcast-align -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wnested-externs -Wwrite-strings
-Werror-implicit-function-declaration -Winline -Wformat=2
-finline-limit=131072 -Disfinite=finite -O6 -MT print-image-gimp.o
-MD -MP -MF .deps/print-image-gimp.Tpo -c -o print-image-gimp.o
print-image-gimp.c
In file included from print-image-gimp.c:30:
print_gimp.h:36:21: error: gtk/gtk.h: No such file or directory
print_gimp.h:37:26: error: libgimp/gimp.h: No such file or directory
print_gimp.h:38:28: error: libgimp/gimpui.h: No such file or directory
make[3]: *** [print-image-gimp.o] Error 1
make[3]: Leaving directory `/opt/gutenprint/gutenprint-5.3.0-pre2/src/gimp2'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/opt/gutenprint/gutenprint-5.3.0-pre2/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/opt/gutenprint/gutenprint-5.3.0-pre2'
make: *** [all] Error 2
If this happens, you will need to re-run configure after
installing these packages.
Normally, the Gutenprint configure script detects which version,
if any, of GIMP is installed and builds an appropriate plugin. If
the configure script does not detect it properly, you may need to
specify --with-gimp or --with-gimp2. However, it's more likely
that you need to install appropriate development packages.
Normally Gutenprint installs GIMP Print plugin in your system
plug-in directory. If you wish to install it in your personal
plugin directory, you may use
./configure --enable-user-install
It is not possible for Gimp-Print 4.2, Gutenprint 5.0, Gutenprint
5.2, and Gutenprint 5.3 (or any future release) to coexist in the
same installation of GIMP. The Gutenprint 5.3-based plugin can
read settings from previous versions of Gutenprint and Gimp-Print,
but the configuration file format in Gutenprint 5.3 cannot be read
by older versions of Gimp-Print or Gutenprint.
================================================================
III) GETTING STARTED
This section describes how to get started by installing printers
under Gutenprint. Please see the user's manual (in
doc/gutenprint-users-manual.odt or
doc/gutenprint-users-manual.pdf) for more information.
----------------
A) PRINTER INSTALLATION
The actual procedure to install a printer depends upon your
operating system.
Gutenprint does not normally require the use of non-standard
procedures (such as starting special programs) to install
printers. Assuming that you are using CUPS, it integrates with
your printing system, so the tools provided by your distribution
vendor should work correctly with Gutenprint.
CUPS uses PPD files to describe printer capabilities. Some
printers are supported by more than one driver, so you may find
more than one PPD file for your printer. Gutenprint PPD files are
described as
Epson Stylus Photo R300 - CUPS+Gutenprint v5.3.0-pre2
Epson Stylus Photo R300 - CUPS+Gutenprint v5.3.0-pre2 Simplified
The "simplified" PPD files offer a basic set of options only, for
selecting printer options, standard paper sizes, and basic quality
settings. The PPD files that are not "simplified" offer a much
broader set of controls, giving the user extensive control over
quality and color adjustment.
Other PPD files are described differently, such as
EPSON New Stylus Color Series CUPS v1.1 (recommended)
These PPD files, whether "recommended" or not, are not Gutenprint
PPD files.
NOTES FOR CUPS USERS:
If you do not choose to automatically update existing PPD files,
you should reinstall any printer queues that you are using
Gutenprint PPD files with. The Gutenprint driver and the PPD
files must be kept in sync, since the PPD files reflect the
particular version of the driver that they were built against. If
you attempt to use a version of Gutenprint with PPD files not
built for that precise version, the driver will fail with a
diagnostic error message. For example, PPD files built for
Gutenprint 5.3.0-pre2 will not work with driver version 5.3.0.
You can identify printers using Gutenprint PPD files by the name
of the PPD file, which will be something like:
EPSON Stylus Photo EX - CUPS+Gutenprint v5.3.0-pre2(en)
Linux users please note: If you are using CUPS 1.1.11 or higher,
and you have a USB-connected printer, you must have a printer
connected to each USB port that you plan to use and powered on
when you restart CUPS. If you do not do so, you will not be able
to reinstall the printer. It is only necessary to do this if you
wish to update PPD files manually; if you use cups-genppdupdate,
you do not need to do this.
Starting with CUPS 1.1.11, you cannot choose an AppSocket
connection and enter "usb:/dev/usblp0" or the like as the URI; you
will get a "client-error-not-possible" error at the end of the
installation process, and you will have a message like the
following in your CUPS error log (typically
/var/log/cups/error_log):
E [21/Nov/2001:17:59:07 +0500] add_printer: bad device-uri attribute 'usb:/dev/usb/lp0'!
If the printer was turned on correctly, you will be given a choice
of a USB connection in the Device dialog.
You may also have problems if you have a .lpoptions file that has
old options set. If you have problems printing, please remove any
existing .lpoptions file in your home directory and try printing
again.
================================================================
IV) SOLVING PROBLEMS
While we have attempted to make use of Gutenprint as
straightforward and trouble-free as possible, we certainly
recognize that there may be problems with installing and using
Gutenprint. In the event of any difficulty, we ask that you take
the following actions:
1) Read the release notes (NEWS).
2) Read the FAQ, in doc/FAQ.html. Your question may be answered
there.
3) Make sure that the paper type and size, and media source, that
you have selected matches the paper loaded into the printer.
This is only necessary if the printer attempts to print, but
does not succeed. It is a good starting point if quality is
poor (too dark or too light, wet ink on the paper, etc.).
4) Reset all settings (particularly the color and quality
settings) to their defaults.
5) If you are using CUPS, search /var/log/cups/error_log (which
may be located elsewhere on some systems) for lines starting
with 'E' (these lines indicate errors). Also search for log
information produced by Gutenprint; all such output lines will
contain "Gutenprint". These lines may help you solve the
problem and will help us investigate your problem if necessary.
6) If you are using CUPS, enable debugging output. This can be
done by editing /etc/cups/cupsd.conf (which must be done as
root). There will be a line in that file:
LogLevel Info
which should be changed to
LogLevel Debug
This will allow CUPS to produce extensive debugging output.
You will need to restart CUPS (the exact procedure is
system-dependent) after doing this. If you report a problem to
the Gutenprint team, you will be asked for this information.
7) There are public forums on Sourceforge dedicated to this
package. Please see
http://sourceforge.net/forum/?group_id=1537 for more
information. The Help forum is a good source of information.
8) If you have a technical support issue that does not appear to
be a bug in the software, you can use the Tech Support Manager.
Please see http://sourceforge.net/support/?group_id=1537.
9) If you have found a clear bug in the package, you may file a
bug report at http://sourceforge.net/bugs/?group_id=1537.
10) You may send mail to the [email protected]
mailing list. This is recommended as a last resort only.
================================================================
V) USE OF THE GIT REPOSITORY
Please read doc/README.maintaining for instructions on how to
build from the GIT repository. You will need additional packages
and tools for this purpose.