Building Dependencies


Note 

Before you start building all of these packages, check your system for existing versions and also check if there are any precompiled binaries made for your specific system. Overwriting an existing library that is used elsewhere in your system could have unfortunate results.

Zlib

Name: zlib
Version: 1.2.2
Source: www.gzip.org/zlib/
Configure Command: ./configure
Reasoning: Zlib is needed for PNG, which is needed for PNG support within GD, which is used to generate some CAPTCHA images.

Jpeg

Name: Jpeg
Version: 6b
Source: www.ijg.org/
Configure Command: ./configure --enable-static --enable-shared
Reasoning: Jpeg is a common image format; adding jpeg support to GD will come in useful when manipulating user images or images supplied by web services.

Freetype

Name: Freetype
Version: 2.1.9
Source: www.freetype.org/
Configure Command: ./configure
Reasoning: Freetype is needed to manipulate text with the GD libraries, which is done in order to create CAPTCHA images.

Gd

Name: GD Graphics Library
Version: 2.0.28
Source: www.boutell.com/gd/
Configure Command: ./configure
Reasoning: GD provides image interrogation (height, width, size, and so on) and manipulation capabilities to PHP. The image information capabilities are useful when retrieving or receiving images (when downloading images specified in a feed or API, or when receiving them as the result of form input), while the manipulation capabilities are used extensively to create CAPTCHAs, or to resize images received.

OpenSSL

Name: Open Source toolkit for SSL/TLS
Version: 0.97f
Source: www.openssl.org/
Configure Command: ./Configure --shared --prefix=/usr/local linux-pentium
Reasoning: OpenSSL is required by both cURL and mod_ssl in order to access secure streams. mod_ssl was used to connect to https:// hosts for secure API access, and mod_ssl was used to provide an https:// host for PayPal to connect to.

Note 

The preceding site does not have any information for Windows users; however, the official Apache HTTP Server Windows Binary is precompiled with OpenSSL support built in. There should be no additional work required for you.

WARNING!: Be very careful when building OpenSSL from source when you are using a binary-based (for example, RPM) Linux distribution. Removing the built-in functions may cause all manner of programs to stop working (lynx, mail, sftp, ssh, and so on). This is particularly true for RedHat systems.

Curl

Name: cURL
Version: 7.13.0
Source: http://curl.haxx.se/
Configure Command: ./configure
Reasoning: cURL provides excellent support for communicating with a remote server over virtually any protocol. Its support of client-side certificates was needed for several of the secure APIs presented in this book. It also provides an alternative to fsockopen() when dealing with raw streams.

mod_ssl

Name: mod_ssl
Version: 2.8.22
Source: www.modssl.org/
Reasoning: mod_ssl provides access to the OpenSSL library to Apache. This allows Apache to serve pages over SSL.

Apache

Name: Apache
Version: 1.3.33
Source: http://httpd.apache.org/
Configure Command: /configure --prefix=/etc/httpd/ --enable-module=so --enable-module=ssl
Reasoning: Apache is an excellent, stable, mature web server that works perfectly with PHP. You may have noticed that the phpinfo() output indicated mod_security. It isn't used at all within this book (and hence not covered here), but it is an excellent security tool to look into.

PHP

Name: PHP: Hypertext Preprocessor
Version: 5.0.3
Source: http://php.net/
Configure Command: './configure' '--with-mysql=/usr/local/mysql' '--with-apxs=/etc/httpd/bin/apxs' '--with-gd' '--with-png' '--with-zlib- dir=/usr/local/lib/zlib-1.2.2' '--enable-gd-native-ttf' '--with-ttf' '--with-jpeg-dir=/usr/local/lib/jpeg-6b/' '--with-freetype-dir=/usr/local/lib/freetype-2.1.9/' '--with-freetype-dir' '--with-xpm-dir=/usr/X11R6/' '--with-tidy' '-with-curl' '--with-openssl=/usr/local/'
Reasoning: All of the options are required, either directly for some of the examples in this book, or for related code that was explored while this book was in development. Note the '--with-tidy' stuck in there; it is shipped with PHP, but not enabled by default.




Professional Web APIs with PHP. eBay, Google, PayPal, Amazon, FedEx, Plus Web Feeds
Professional Web APIs with PHP. eBay, Google, PayPal, Amazon, FedEx, Plus Web Feeds
ISBN: 764589547
EAN: N/A
Year: 2006
Pages: 130

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net