The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
DBI - The Perl Database Interface by Tim Bunce.

Copyright (c) 1994-2010  Tim Bunce  Ireland.

See COPYRIGHT section in DBI.pm for usage and distribution rights.

See GETTING HELP section in DBI.pm for how to get help.

QUICK START GUIDE:

    The DBI requires one or more 'driver' modules to talk to databases,
    but they are not needed to build or install the DBI.

    Check that a DBD::* module exists for the database you wish to use.

    Read the DBI README then Build/test/install the DBI by doing
	    perl Makefile.PL
	    make
	    make test
	    make install
    Then delete the source directory tree since it's no longer needed.
    Or else use an installer like cpanm, cpanplus, or cpan commands.

    Use the 'perldoc DBI' command to read the DBI documentation.
    See GETTING HELP section in DBI.pm for how to get help.

    Fetch the DBD::* driver module you wish to use and unpack it.
    http://search.cpan.org/ (or www.activestate.com if on Windows)
    It is often important to read the driver README file carefully.
    Generally the build/test/install/delete sequence is the same
    as for the DBI module.


The DBI.pm file contains the DBI specification and other documentation.
PLEASE READ IT. It'll save you asking questions on the mailing list
which you will be told are already answered in the documentation.

For more information and to keep informed about progress you can join
the a mailing list via mailto:dbi-users-help@perl.org

To help you make the best use of the dbi-users mailing list,
and any other lists or forums you may use, I strongly
recommend that you read "How To Ask Questions The Smart Way"
by Eric Raymond:
 
  http://www.catb.org/~esr/faqs/smart-questions.html

Much useful information and online archives of the mailing lists can be
found at http://dbi.perl.org/

See also http://search.cpan.org/


BEFORE BUILDING, TESTING AND INSTALLING this you will need to:

    Build, test and install a recent version of Perl 5
    It is very important to test it and actually install it!
    (You can use "Configure -Dprefix=..." to build a private copy.)

BUILDING

    perl Makefile.PL
    make
    make test
    make test TEST_VERBOSE=1   (if any of the t/* tests fail)
    make install (if the tests look okay)

The perl you use to execute Makefile.PL should be the first one in your PATH.
If you want to use some installed perl then modify your PATH to match.

IF YOU HAVE PROBLEMS:

First, carefully read the notes at the bottom of this file.

If you can't fix it your self please post details to dbi-users@perl.org.
Please do _not_ send them just to me.  Please include:

1. A complete log of a complete build, e.g.:

    perl Makefile.PL           (do a make realclean first)
    make
    make test
    make test TEST_VERBOSE=1   (if any of the t/* tests fail)

2. The output of perl -V

3. If you get a core dump, try to include a stack trace from it.
   (Try installing the Devel::CoreStack module to get a stack trace.)
   If the stack trace mentions XS_DynaLoader_dl_load_file then rerun
   make test after setting the environment variable PERL_DL_DEBUG to 2.

4. If your installation succeeds, but your script does not behave
   as you expect, the problem is possibly in your script. Before
   sending to dbi-users, try writing a small, easy to use test case
   to reproduce your problem. Also, use the DBI->trace method to
   trace your database calls.

Please don't post problems to comp.lang.perl.* or perl5-porters.
This software is supported via the dbi-users mailing list.  For more
information and to keep informed about progress you can join the
mailing list via mailto:dbi-users-help@perl.org
(please note that I do not run or manage the mailing list).

It is important to check that you are using the latest version before
posting. If you're not then I'm very likely to simply say "upgrade to
the latest". You would do yourself a favour by upgrading beforehand.

Please remember that I'm _very_ busy. Try to help yourself first,
then try to help me help you by following these guidelines carefully.
(Note specifically that I'm unlikely to answer a question that's
answered clearly in the on-line documentation.)

Regards,
Tim Bunce.

=======================================================================

---
If you get an error like "gcc: command not found" or "cc: command not found"
you need to either install a compiler, or you may be able to install a
precompiled binary of DBI using a package manager (e.g., ppm for ActiveState,
Synaptic for Ubuntu, port for FreeBSD etc) 

---
If you get compiler errors refering to Perl's own header files
(.../CORE/*.h) or the compiler complains about bad options etc then
there is something wrong with your perl installation. If the compiler complains
of missing files (.../perl.h: error: sys/types.h: No such file) then you may
need to install extra packages for your operating system.

Generally it's best to use a Perl that was built on the system you are trying
to use and it's also important to use the same compiler that was used to build
the Perl you are using.

If you installed Perl using a binary distribution, such as ActiveState Perl,
or if Perl came installed with the operating system you use, such as Debian or
Ubuntu, then you may be able to install a precompiled binary of DBI using a
package manager.  Check the package manager for your distribution of Perl (e.g.
ppm for ActiveState) or for your operating system (e.g Synaptic for Ubuntu).

---
If you get compiler warnings like "value computed is not used" and
"unused variable" you can ignore them.

End.