Scanner Access Now Easy ― Backends
 
 
 
 
 
 
Go to file
Gerhard Jaeger 39044887ca * aclocal.m4 configure configure.in: added checks for pthread.h and
added linker option -lpthread if pthread.h is found
* include/sane/config.in.h: added HAVE_PTHREAD_H
* sanei/sanei_thread.c include/sane/sanei_thread.h: added pthread_
  functions to library, so every backend is able to use either fork or
  pthread for its reader-process - see plustek backend for example
* backend/plustek.h backend/plustek.c: added sanei_thread stuff to support
  threading on MacOS X
* backend/plustek_pp*: some cleanup
2003-10-05 16:00:30 +00:00
backend * aclocal.m4 configure configure.in: added checks for pthread.h and 2003-10-05 16:00:30 +00:00
doc Added Epson Perfection 3170, Packard Bell Diamond 1200, and Visioneer PaperPort 2003-10-05 12:22:56 +00:00
frontend Minor cleanup from the jpeg move. Reverted frontend link order. 2003-07-26 21:40:06 +00:00
include * aclocal.m4 configure configure.in: added checks for pthread.h and 2003-10-05 16:00:30 +00:00
japi Minor DISTFILES and distclean updates. 2002-07-30 18:31:11 +00:00
lib Removed #include again, breaks compilation on OS/2. 2003-04-30 09:57:01 +00:00
po Regenerated. 2003-10-05 12:16:51 +00:00
sanei * aclocal.m4 configure configure.in: added checks for pthread.h and 2003-10-05 16:00:30 +00:00
testsuite Added global list of file patterns for "make distclean". Some "make clean" 2002-02-13 20:48:29 +00:00
tools Changed bug in gamm4scanimage: When shadow==0 and highlight!=maxin then 2003-09-29 20:32:48 +00:00
AUTHORS Added back old mustek_pp backend. That backend supports Mustek CCD scanners. 2003-10-04 10:40:00 +00:00
COPYING Initial revision 1999-08-09 18:06:01 +00:00
ChangeLog * aclocal.m4 configure configure.in: added checks for pthread.h and 2003-10-05 16:00:30 +00:00
ChangeLog-1.0.0 Splitted ChangeLog to limit filesize. Editing became slow on smaller systems. 2002-01-09 19:43:51 +00:00
ChangeLog-1.0.1 Splitted ChangeLog to limit filesize. Editing became slow on smaller systems. 2002-01-09 19:43:51 +00:00
ChangeLog-1.0.2 Splitted ChangeLog to limit filesize. Editing became slow on smaller systems. 2002-01-09 19:43:51 +00:00
ChangeLog-1.0.3 Splitted ChangeLog to limit filesize. Editing became slow on smaller systems. 2002-01-09 19:43:51 +00:00
ChangeLog-1.0.4 Splitted ChangeLog to limit filesize. Editing became slow on smaller systems. 2002-01-09 19:43:51 +00:00
ChangeLog-1.0.5 Splitted ChangeLog to limit filesize. Editing became slow on smaller systems. 2002-01-09 19:43:51 +00:00
ChangeLog-1.0.6 Oliver Rauch: 2002-09-22 21:56:17 +00:00
ChangeLog-1.0.7 Oliver Rauch: 2002-09-22 21:56:17 +00:00
ChangeLog-1.0.8 Oliver Rauch: 2002-09-22 21:56:17 +00:00
ChangeLog-1.0.9 Moved Ulrich Deiters' changes to the current ChangeLog file. 2002-11-13 16:16:50 +00:00
ChangeLog-1.0.10 Moved old ChageLog entries to ChangeLog-1.0.10. 2003-02-01 22:56:13 +00:00
ChangeLog-1.0.12 Warnings enabled again. Added -cvs to version. 2003-05-25 11:38:20 +00:00
LICENSE Clarify that not all backends us GPL + SANE exception. Fixed pointer to 2003-07-26 12:07:23 +00:00
Makefile.in removed TODO, as this file does no longer exist 2003-09-24 14:42:21 +00:00
NEWS Port to Cygwin. 2003-09-24 03:41:48 +00:00
PROBLEMS Moved "memory exhausted" and missing scsi headers problems to 2003-02-09 15:52:16 +00:00
PROJECTS Changed win32 SANE project. 2003-05-27 23:58:13 +00:00
README Updated contact information (website, mailing lists, bug tracker). Minor fixes. 2003-09-24 13:23:25 +00:00
README.aix Added mention of the AIX 5.1 version of the passthru driver. 1994-09-07 02:48:51 +00:00
README.beos Added BeOS platform information. Updated Makefiles concerning READMEs. 2002-09-12 19:01:11 +00:00
README.darwin Added support for the MacOS X IOKit SCSI Architecture Model API. Added support 2003-08-21 10:33:34 +00:00
README.djpeg Moved from djpeg.README in backend directory 2003-07-26 03:10:09 +00:00
README.freebsd Automatic SCSI detection does work, so this part was removed. libusb is 2003-04-20 13:16:12 +00:00
README.hp-ux Lots of new and updated information (from 2001-10-03 18:59:23 +00:00
README.linux Minor updates. 2003-04-20 13:56:26 +00:00
README.netbsd Some additions concerning uscanner driver. 2003-04-26 12:08:18 +00:00
README.openbsd libusb is necessary for some backends. 2003-04-20 13:57:21 +00:00
README.os2 Updated contact information (website, mailing lists, bug tracker). Minor fixes. 2003-09-24 13:23:25 +00:00
README.solaris Added comment about SCSI-only support. 2002-06-11 19:51:12 +00:00
README.unixware2 2000-11-24 Henning Meier-Geinitz <hmg@gmx.de> 2000-11-24 22:21:32 +00:00
README.unixware7 2000-11-24 Henning Meier-Geinitz <hmg@gmx.de> 2000-11-24 22:21:32 +00:00
README.windows Updated XSane and xscanimage status. 2003-09-26 01:38:01 +00:00
acinclude.m4 Check if ss_family or __ss_family is in struct sockaddr_storage. Otherwise 2003-06-04 19:49:48 +00:00
aclocal.m4 * aclocal.m4 configure configure.in: added checks for pthread.h and 2003-10-05 16:00:30 +00:00
config.guess New upstream versions. 2003-04-30 20:26:39 +00:00
config.sub New upstream versions. 2003-04-30 20:26:39 +00:00
configure * aclocal.m4 configure configure.in: added checks for pthread.h and 2003-10-05 16:00:30 +00:00
configure.in * aclocal.m4 configure configure.in: added checks for pthread.h and 2003-10-05 16:00:30 +00:00
install-sh Merged main branch with current DEVEL_1_9. 2000-03-05 13:57:25 +00:00
ltmain.sh Add support for -framework option for MacOS X (from Mattias Ellert 2003-04-30 23:00:50 +00:00
mkinstalldirs Updated for OS/2 (from "Franz Bakan" <fbakan@gmx.net>). 2001-11-22 20:17:48 +00:00
sane-backends.lsm Addition of the Matsushita / Panasonic backend. 2002-03-06 23:54:26 +00:00

README

How to configure, build, and install SANE.


Introduction:
=============
SANE stands for Scanner Access Now Easy.
This package contains the SANE libraries (this means backends and
network scanning parts) and the command line frontend scanimage.
You always find the most recent version of SANE on:

  http://www.sane-project.org/

At the same location there are also links to snapshots of the CVS server and
sometimes beta releases of sane-backends. These are unstable development
versions, so be careful when using them. Please report any problems to us. See
contact section for details.

There are several graphical frontends available for SANE, see the list at
http://www.sane-project.org/sane-frontends.html.


Quick install:
==============

./configure
make
make install

man sane


Prerequisites
=============

In order to build SANE, the following tools and libraries are required:

	- GNU make: version 3.70 or newer

	- ANSI C compiler: GNU C (gcc) is recommended for best performance,
	  but any ANSI-compliant compiler should do

Some more libraries are not strictly necessary to compile SANE, but some
functionality may be lost if they are not available:
        
        - libusb (>=0.1.6): Strongly recommended if you use a USB scanner.
          Some backends won't work without libusb at all.

        - libjpeg (>=6B): For the dc210, dc240, and gphoto2 backends.

        - libieee1284 (>=0.1.5): For the canon_pp and hpsj5s backends.

        - libgphoto2 (>=2.0): For the gphoto2 backend.

SANE should build on most Unix-like systems. Support for OS/2, MacOS X, BeOS,
and Microsoft Windows is also available. For more details look at the
operating system specific README.* files. For a detailed support matrix, see:

    http://www.sane-project.org/sane-support.html

This table may be out of date. Please tell us about any corrections or
additions. Please mention your operating system and platform and all the other
details mentioned in the table. See also the contact section.

Please check that there aren't any older versions of SANE installed on your
system. Especially if SANE libraries are installed in a different prefix
directory (e.g. /usr/lib/) this may cause problems with external
frontends. Please remove these libraries (libsane.*, sane/libsane-*) by using
your packet manager or manually before installing this version of SANE.


Configuration
=============

Simply invoke configure in the top-level directory.  Besides the usual GNU
configure options, there are the following SANE specific options:

 --disable-shared
	Don't use shared libraries.  Useful for debugging or when there
	is a problem building shared libraries.  This implicitly turns
	on --disable-dynamic --enable-static as well.

 --disable-dynamic
	Disable dynamic loading of backends (in the dll backend).
	configure normally turns on dynamic loading when it
	can find the appropriate header files and libraries
	(<dlfcn.h> and -dl).

 --enable-static
        Use static libraries (turned off by default).

 --enable-preload
        Preload backends into DLL backend.  This is useful for debugging,
	when dynamic loading is unavailable, or to reduce runtime linking
	overheads.  If dynamic loading or shared libraries are unavailable
	or disabled, this option is turned on automatically.
	
 --enable-scsibuffersize=N 
        Specify the buffer size of the buffer for SCSI commands. The default
	value is 131072 bytes (128 kb). This may be changed at runtime by
	setting	the environment variable SANE_SG_BUFFERSIZE to the desired
	value. The option is Linux-only at this time.
	--enable-scsibuffersize and SANE_SG_BUFFERSIZE have no effect for
	the Mustek, Umax and Sharp backends. For these backends, the buffer
	size is set automatically and/or can be specified in the backend's
	configuration file. Please refer to the backend's man pages for
	details.

--disable-translations
        Disable installation of translated backend options. If you get
        errors in the po/ directory during build, use this option.
        See po/README for details.

In addition to these configuration options, there are some more SANE-specific
options and many standard-options.  To get a description of available options,
invoke configure with option --help.

If you plan on debugging one of the SANE programs, we recommend to run
configure like this:

   CFLAGS="-g -O -Wall" ./configure --disable-shared

For operating system specific information, look at the README.* files.


Build
=====

To build SANE, simply type "make" in the top-level directory.

To clean up the executables and libraries in the source directory, type "make
clean". To restore everything to the status after unpacking the package, type
"make distclean".


Installation and Configuration
==============================

Once the build has finished, install SANE with "make install".  By
default, this will place the SANE libraries in /usr/local/lib/, the
configuration files in /usr/local/etc/sane.d/, and the manual pages in
/usr/local/man/.  The location of these directories can be overridden
with configure options; see "configure --help" for details.

Before running any SANE program, read the PROBLEMS file in this directory.

For information on configuring and trouble-shooting the various SANE
components, please refer to the manual page sane(7).

The tools/ directory contains some small programs that may be helpful. They
are described in tools/README.


Removing
========

Type "make uninstall" to remove SANE from your system. This will also remove
older versions of SANE if they have been installed at the same prefix.
Warning: Your configuration files will be deleted also so make sure you have a
backup. By default the configuration files are located in the directory
/usr/local/etc/sane.d/.


Contact
=======

For questions and general discussion about SANE contact the sane-devel mailing
list. You must be subscribed to the list to send mail. See
http://www.sane-project.org/mailing-lists.html for details.

If you want to submit a bug report or feature request please use our bug
tracking system.  See http://www.sane-project.org/bugs.html for details. You
may also contact the author of a specific backend directly. See the AUTHORS
file for a list of addresses.