============================================
System Requirements for PDFlib GmbH Products
============================================

This document describes the requirements for using PDFlib GmbH binaries on
various platforms. This list covers all platforms on which at least one
product is supported. It should not be construed as a commitment regarding
the availability of product/platform combinations.

To find out whether a PDFlib GmbH product is supported at all on a particular
platform please check the downloadable binary packages which are available
at www.pdflib.com.


================================
Note on 64-bit Intel platforms
================================
Intel uses the term "Intel 64" for a processor architecture which is
known by several other names:
- Intel formerly called it EM64T (after using IA-32e)
- Microsoft and Sun call it x64
- AMD calls it AMD64 (after using x86-64)
- Linux systems often refer to x86_64

PDFlib GmbH binaries for Intel 64 work on all architectures listed above.
They do not work on Intel Itanium (formerly called IA-64), which is
a separate architecture.
Because of the vendor-specific conventions we continue to use the term "x64"
instead of "Intel 64" in the context of Sun and Microsoft operating systems. 


================================
Windows
================================

Requirements:
Windows 2000/XP/Vista/7 on x86 or x64
Windows Server 2003/2003 R2/2008/2008 R2 on x86 or x64

.NET binding
------------
The following flavors are supported:
- .NET Framework 2.0 - 3.5
- .NET Framework 4.0
- 32-bit (x86) and 64-bit (x64) versions of the above

See PDFlib-in-.NET-HowTo.pdf for details on .NET configuration.

With ASP.NET 2.0 the .NET editions of PDFlib GmbH products require
Full Trust level. They do not work with any other trust level, such as
High or Medium Trust.

C and C++ bindings
------------------
Project files for the programming samples are available for
Visual Studio 2005. VS2008 and VS2010 can convert these automatically.


================================
Linux
================================
Requirements: GLIBC 2.3 (or later) based system on x86 or Intel 64

C and C++ bindings
------------------
Compiler:
    x86: g++ 3.4 or above (gcc 4.0 or above recommended)
    Intel 64: g++ 4.0 or above
    LDFLAGS: "-pthread"

Java, Perl, PHP, Python, Ruby, Tcl bindings
-------------------------------------------
x86 and Intel 64: libstdc++.so.6


================================
Mac OS X
================================
Requirements: Mac OS X 10.5/10.6 or 10.7

C, C++, and Objective-C bindings
--------------------------------
Compiler: Xcode 3.1 or above
(The Objective-C example needs Xcode 3.2 or newer)

PHP binding
-----------
Mac OS X 10.6 and above: no restrictions
Mac OS X 10.5: see PDFlib-in-PHP-HowTo.pdf for restrictions


================================
FreeBSD
================================
Requirements:
x86: FreeBSD 7/8 and compatible systems
Intel 64: FreeBSD 7/8 and compatible systems


================================
AIX
================================
Requirements: AIX 5.2 and compatible systems; currently AIX 6/7

C and C++ bindings
------------------
Compiler: XLC 8.0 or above: you must use a thread-safe variant of the compiler
(such as xlC_r).

g++ is unsupported:
    CFLAGS/CXXFLAGS for g++: "-mxl-compat -pthread"
    LDFLAGS for g++: "-lC -pthread"


================================
HP-UX
================================
Requirements: HP-UX 11 and compatible systems on PA-RISC or IA-64
(currently up to 11.31 and 11i v3)

C and C++ bindings
------------------
Compiler: aCC
CFLAGS/CXXFLAGS/LDFLAGS: "-mt" (required for multithreaded applications)

g++ is unsupported:
    CFLAGS/CXXFLAGS/LDFLAGS for g++ on IA-64: "-lCsup -pthread",
    CFLAGS/CXXFLAGS/LDFLAGS for g++ on PA-RISC: "-lCsup_v2 -pthread",

PHP binding
-----------
In order to run the PHP binding on HP-UX you must install
operating system patches to fix an issue with shared library
loading and C++.

The following or corresponding superseding patches are required for HP-UX 11.11:

PHSS_33945 (s700_800 11.11 HP aC++ -AA runtime libraries)
PHSS_39749 (s700_800 11.11 ld(1) and linker tools cumulative patch)
PHCO_35743 (s700_800 11.11 libc cumulative patch)

The following or corresponding superseding patches are required for HP-UX 11.0:

PHSS_26945 (s700_800 11.x HP aC++ -AA runtime libraries)
PHSS_24303 (s700_800 11.00 ld(1) and linker tools cumulative patch)
PHCO_28425 (s700_800 11.00 libc cumulative patch)


================================
iOS
================================
Requirements:
- Runtime Requirements : iPhone OS 3.0 or later (incl. iOS 5.0)
- Build Requirements   : iOS 4.0 SDK or later
			 Xcode 3.2 or later (incl. Xcode 4.2)


================================
Android
================================
Requirements:
- Runtime Requirements : Android 2.1 and newer is supported
- Build Requirements   : Android SDK r10 or newer is recommended.


================================
Solaris
================================
Requirements: Solaris 8 and compatible systems on x86, x64, or sparc
(incl. Solaris 10)

C and C++ bindings
------------------
Compiler: Sun Studio
CFLAGS/CXXFLAGS/LDFLAGS: "-mt -lpthread"

g++ is unsupported:
    CFLAGS/CXXFLAGS for g++: "-pthread"
    LDFLAGS for g++: "-lCstd -lCrun -pthread"


================================
i5/iSeries
================================
General requirements: OS V5 R2 M0 and compatible systems

Requirements for using PDFlib GmbH products with PHP:
- Zend Server for IBM i or Zend Server Community Edition (CE) for IBM i
  (requires PASE for i, which is a no-charge option of IBM i)
- PHP 5.2 or PHP 5.3
- The binaries from the AIX 32-bit package must be used (not from the
  i5/iSeries package)


================================
zSeries
================================
Requirements:
z/OS 1.6 and compatible systems with USS (32-bit/64-bit) or MVS (32-bit)
(MVS versions of PDFlib GmbH products are not thread-safe)

or

zLinux 32-bit or 64-bit (s390/s390x)
GLIBC 2.3 (or later) based system (e.g. SLES 10 or above, RHEL 5 or above).


C/C++ binding
-------------
CFLAGS/CXXFLAGS: -W "c,float(ieee)"
