Read Me
Welcome to Gutenprint 5.2.13-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
Macintosh OS X systems (10.6 and above) that use CUPS as their
printing system. Gutenprint currently supports over 2600
printers. It also includes an enhanced Print plug-in for GIMP
that replaces the print plug-in packaged with the GIMP
distribution.
Gutenprint 5.2.12 is a stable release of Gutenprint 5.2.
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 CVS repository, you need
to take some additional steps. Please read doc/README.maintaining
for instructions on how to build from CVS.
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
- GTK-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
gimp-print-devel@lists.sourceforge.net
================================================================
Release: gutenprint 5.2.12-pre4 generated on 29 Oct 2016
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)
XML data directory: /usr/local/share/gutenprint/5.2/xml
Module directory: /usr/local/lib64/gutenprint/5.2/modules (${exec_prefix}/lib64/gutenprint/5.2/modules)
Install sample images: yes
General configuration:
Compiler options: -Disfinite=finite -O6 -Wall -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wwrite-strings -Werror-implicit-function-declaration -Winline -Wformat=2 -finline-limit=131072 -pedantic -Waggregate-return -Wcast-qual -Wshadow -Wredundant-decls
Build static libraries: yes
Build shared libraries: no
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 3.16.7-24-default #1 SMP Mon Aug 3 14:37:06 UTC 2015 (ec183cc) 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 may be used as a driver under CUPS (Common UNIX
Printing System), if your system uses that spooler. Full
description of CUPS is beyond the scope of this README file; full
information may be found at http://www.cups.org. Gutenprint 5.2
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 normally detect the presence of CUPS on your
system and will attempt to build the CUPS driver if it finds CUPS
installed. If your distribution separates the CUPS installation
into development and runtime packages, you must install the CUPS
development package (cups-devel or similar). You may need to
install other development packages depending upon how your
distribution has built CUPS. The list of packages varies, but
commonly development packages for TIFF (libtiff-devel), JPEG
(jpeg-devel or libjpeg-devel), PNG (libpng-devel), OpenSSL
(openssl-devel), and libc (glibc-devel or libc-devel) will be
required. Failure to install these packages will lead to errors
when the package is compiled. 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.2.10/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_2-genppd.o -MD -MP -MF
.deps/gutenprint_5_2-genppd.Tpo -c -o gutenprint_5_2-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_2-genppd.o] Error 1
make[3]: Leaving directory `/opt/gutenprint/gutenprint-5.2.10/src/cups'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/opt/gutenprint/gutenprint-5.2.10/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/opt/gutenprint/gutenprint-5.2.10'
make: *** [all] Error 2
Installing the CUPS driver for Gutenprint 5.2 will not interfere
with your ability to continue using the Gutenprint 5.0 or
Gimp-Print 4.2 CUPS driver.
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.2. 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, gutenprint52usb, 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.2.9 with Gutenprint 5.2.10.
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, or 5.2 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.2. 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.2. 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 /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. Your system may have a different
way to restart the CUPS server. OS X (10.5), for example, uses
the following command:
sudo /System/Library/StartupItems/PrintingServices/PrintingServices.sh 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
(5.0, 5.1, or 5.2 release or prerelease). This script will only
update PPD files from earlier versions of Gutenprint; it will not
update Gimp-Print 4.2 PPD files or PPD files from other drivers.
However, you may install Gutenprint 5.2 alongside Gimp-Print 4.2,
and use both Gimp-Print 4.2 and Gutenprint 5.2 drivers
concurrently in separate printer queues. Therefore, you need not
convert a workflow based on Gimp-Print 4.2 right away, but can
gradually convert or even permanently use both drivers for
different printer queues.
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.2 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.2. 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 'gutenprint52+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
DNP DS40 / Citizen CX
DNP DS80 / Citizen CX-W
DNP DS80DX (experimental)
DNP DS-RX1 / DS-RX1HS / Citizen CY
DNP DS620
DNP DS820
Kodak Professional 1400
Kodak 305 Photo Printer
Kodak 605 Photo Printer
Kodak 805 Photo Printer
Kodak 6800 Photo Printer
Kodak 6850 Photo Printer
Mitsubishi CP-3800DW
Mitsubishi CP-9550D/DW/DW-S/DZ/DZ-S
Mitsubishi CP-9600D/DW
Mitsubishi CP-9800DW/DW-S (experimental)
Mitsubishi CP-9810DW (experimental)
Mitsubishi CP-K60DW-S
Mitsubishi CP-D70DW / CP-D707DW
Mitsubishi P93DW
Mitsubishi P95DW
Shinko CHC-S1245 (aka Sinfonia E1) (experimental)
Shinko CHC-S6245 (aka Sinfonia CE1) (experimental)
Shinko CHC-S2145 (aka Sinfonia S2)
Shinko CHC-S6145 (aka Sinfonia CS2)
Sony UP-DR150
Sony UP-DR200
Sony UP-CR10L / DNP DS-SL10 (experimental)
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.
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 (particularly OSX) 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: gutenprint52+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
("gutenprint52+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
gutenprint52+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
gutenprint52+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/gutenprint52+usb -B shinkos2145 -U "sometext"
After changing the user string, you will need to remove and re-create
the CUPS queue.
Note on Mitsubishi Dye-Sublimation models with an '-S' and '-U' suffixes
As well as manufacturing standalone photo printers, Mitsubishi also
manufactures photo lab and kiosk solutions which use their printers.
However, the printers intended for use with those kiosks are *not*
compatible with the standalone models, despite having similar model
names. They are incompatible from a software perspective, and also
require different media.
With two exceptions, if the model ends in '-S' or has a red face-
plate, it is intended only for use with a Mitsubishi lab or kiosk, and
consequently not supportable by Gutenprint. For example, see the
(non-comprehensive) list below:
Supported/Compatible | Unsupported/Incompatible
---------------------------------------------------
CP-D70DW | CP-D70DW-S
CP9600DW | CP9600DW-S
CP9550DW | CP9550DW-U
The exceptions to this rule are the CP-K60DW-S, which is sold as a
standalone "event" printer, and the CP9550DW-S, which has been
successfully reverse-engineered.
----------------
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. Gutenprint 5.2 no
longer supports GIMP 1.2.
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.2 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. 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.2.10/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.2.10/src/gimp2'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/opt/gutenprint/gutenprint-5.2.10/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/opt/gutenprint/gutenprint-5.2.10'
make: *** [all] Error 2
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, and
Gutenprint 5.2 (or any future release) to coexist in the same
installation of GIMP. The Gutenprint 5.2-based plugin can read
settings from previous versions of Gutenprint and Gimp-Print, but
the configuration file format in Gutenprint 5.2 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 and the spooler (printing system) in use on your
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.
Most printing systems currently use 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.2.10
Epson Stylus Photo R300 - CUPS+Gutenprint v5.2.10 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 MJ 520C Foomatic/stcolor (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.2.1 will not work with driver version 5.2.2. 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.2.10(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 gimp-print-devel@sourceforge.net
mailing list. This is recommended as a last resort only.
================================================================
V) USE OF THE CVS REPOSITORY
Please read doc/README.maintaining for instructions on how to
build from the CVS repository. You will need additional packages
and tools for this purpose.