Recent upgrade to php 5.2.3 require to install gd support too but it always need xorg. Here’s a lttle note on how to add gd support in php5 ports in freebsd without xorg.
1. Checking installed php extension
proxy# pkg_info | grep php5
php5-5.2.3 PHP Scripting Language (Apache Module and CLI)
php5-bz2-5.2.3 The bz2 shared extension for php
php5-ctype-5.2.3 The ctype shared extension for php
php5-curl-5.2.3 The curl shared extension for php
php5-dom-5.2.3 The dom shared extension for php
php5-ftp-5.2.3 The ftp shared extension for php
php5-iconv-5.2.3 The iconv shared extension for php
php5-imap-5.2.3 The imap shared extension for php
php5-pcre-5.2.3 The pcre shared extension for php
php5-simplexml-5.2.3 The simplexml shared extension for php
php5-spl-5.2.3 The spl shared extension for php
2. Find php5-gd and install it.
proxy# whereis php5-gd
php5-gd: /usr/ports/graphics/php5-gd
proxy# cd /usr/ports/graphics/php5-gd && make clean
===> Cleaning for php5-gd-5.2.3
proxy# cd /usr/ports/graphics/php5-gd && make install
===> Vulnerability check disabled, database not found
===> Found saved configuration for php5-gd-5.2.3
===> Extracting for php5-gd-5.2.3
=> MD5 Checksum OK for php-5.2.3.tar.bz2.
=> SHA256 Checksum OK for php-5.2.3.tar.bz2.
===> Patching for php5-gd-5.2.3
===> Applying FreeBSD patches for php5-gd-5.2.3
===> php5-gd-5.2.3 depends on executable in : phpize – found
===> php5-gd-5.2.3 depends on file: /usr/local/bin/autoconf259 – found
===> php5-gd-5.2.3 depends on shared library: freetype.9 – not found
===> Verifying install for freetype.9 in /usr/ports/print/freetype2
wow, alot of things it will installed and tend to install xorg 🙁
3. Change strategy, install gd first before install php5-gd
proxy# whereis gd
gd: /usr/ports/graphics/gd
proxy# cd /usr/ports/graphics/gd && make install WITH_XPM=3Dyes WITHOUT_X11=3Dyes
===> Vulnerability check disabled, database not found
=> gd-2.0.35.tar.bz2 doesn’t seem to exist in /usr/ports/distfiles/.
=> Attempting to fetch from http://www.libgd.org/releases/.
Checking if gd installed properly.
adding in /etc/make.conf
WITHOUT_X11=yes
proxy# pkg_info | grep gd
gd-2.0.35,1 A graphics library for fast creation of images
5. Install php5-gd
proxy# cd /usr/ports/graphics/php5-gd && make install
===> php5-gd-5.2.3 depends on executable in : phpize – found
===> php5-gd-5.2.3 depends on file: /usr/local/bin/autoconf259 – found
===> php5-gd-5.2.3 depends on shared library: freetype.9 – found
===> php5-gd-5.2.3 depends on shared library: png.5 – found
===> php5-gd-5.2.3 depends on shared library: jpeg.9 – found
===> php5-gd-5.2.3 depends on shared library: t1.5 – not found
===> Verifying install for t1.5 in /usr/ports/devel/t1lib
===> Vulnerability check disabled, database not found
=> t1lib-5.1.1.tar.gz doesn’t seem to exist in /usr/ports/distfiles/.
=> Attempting to fetch from http://www.ibiblio.org/pub/Linux/libs/graphics/.
t1lib-5.1.1.tar.gz 1% of 1795 kB 4357 Bps
===> Installing for php5-gd-5.2.3
===> php5-gd-5.2.3 depends on file: /usr/local/include/php/main/php.h – found
===> Generating temporary packing list
===> Checking if graphics/php5-gd already installed
===> Registering installation for php5-gd-5.2.3
****************************************************************************
The following line has been added to your /usr/local/etc/php/extensions.ini
configuration file to automatically load the installed extension:
extension=gd.so
****************************************************************************
6. php5-gd successfully installed, checking time 🙂
proxy#
proxy# pkg_info | grep php5-gd
php5-gd-5.2.3 The gd shared extension for php
Yay, my bad..my bad
This steps also usable for php4 , just change php5-gd into php4-gd.
Today lesson for me : never..ever think that you are good enough. Always learn and learn.