summaryrefslogtreecommitdiffstats
path: root/README
blob: 40e0f33a446eb85a65d9e2b61f8a8eb4acf51408 (plain) (blame)
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
This is the QPDF package.  Information about it can be found at
http://qpdf.qbilt.org.

QPDF is copyright (c) 2005-2009 Jay Berkenbilt

This software may be distributed under the terms of version 2 of the
Artistic License which may be found in the source distribution as
"Artistic-2.0".  It is provided "as is" without express or implied
warranty.

Building on UNIX/Linux
======================

For UNIX and UNIX-like systems, you can usually get by with just

./configure
make
make install

For more detailed general information, see the "INSTALL" file in this
directory.

Building on Windows
===================

QPDF is known to build and pass its test suite with mingw (gcc 4.4.0)
and Microsoft Visual C++ .NET 2008 Express.  In both cases, cygwin is
required to run the test suite.  Either cygwin or MSYS is required to
build as well in order to get make and other related tools.  The MSVC
build has only been tested under cygwin.  The mingw build requires
MSYS and will probably not work with cygwin.

For details on how to build under Windows, see README.windows.


Additional Notes on Build
=========================

QPDF's build system, inspired by abuild (http://www.abuild.org), can
optionally use its own built-in rules rather than using libtool and
obeying the compiler specified with configure.  This can be enabled by
passing --with-buildrules=buildrules where buildrules corresponds to
one of the .mk files (other than rules.mk) in the make directory.
This should never be necessary on a UNIX system, but may be necessary
on a Windows system.  See README.windows for details.  There is a
gcc-linux.mk file enable "gcc-linux" build rules, but it is intended
to help test the build system; Linux users should build with the
"libtools" rules, which are enabled by default.

The QPDF package provides some executables and a software library.  A
user's manual can be found in the "doc" directory.  The docbook
sources to the user's manual can be found in the "manual" directory.

The software library is just libqpdf, and all the header files are in
the qpdf subdirectory.  If you link with -lqpdf and your system does
not know how to read libtool .la files, then you will also need to
link with -lpcre and -lz.

To learn about using the library, please read comments in the header
files in include/qpdf, especially QPDF.hh, QPDFObjectHandle.hh, and
QPDFWriter.hh.  You can also study the code of qpdf/qpdf.cc, which
exercises most of the public interface.  There are additional example
programs in the examples directory.