歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> gd庫安裝方法

gd庫安裝方法

日期:2017/2/28 17:58:10   编辑:Linux教程
使php支持 gif , jpeg , ttf ,wbmp
  為了安裝方便,我自己寫了一分GD安裝的過程,現在發表出來.希望朋友們多提意見,謝謝! 原來GD不支持WBMP,現在擴充GD支持WBMP.
問題:
  安裝RedHat 7.2 後,進行PHP編程,發現只能處理GIF圖像,不能處理JPEG圖像。
  後來知道PHP處理圖像,使用了GD庫,而GD庫開始時是支持GIF的,但由於GIF使用了有版權爭議的LZW算法,會引起法律問題,於是從GD- 1.6開始,GD庫不再支持GIF,改為支持更好的,無版權爭議的PNG。而我現在希望同時支持GIF,PNG和JPEG。由底向上的順序介紹,即 Jpeg->ttf->zlib->png->GD->PHP->Apache。
1.Jpeg6b的安裝和配置
  Jpeg的主要文件有jpeglib.h, libjpeg.a, libjpeg.so等。首先檢查系統中安裝了沒有,到/usr/include目錄下看有無jpeglib.h,到/usr/lib目錄下看有無 libjpeg.a和libjpeg.so。我的系統中沒有,因而要安裝。
  獲取Jpeg源碼的地址為:
  ftp://ftp.uu.net/graphics/jpeg/
  取得的文件為jpegsrc.v6b.tar.gz,放於/usr/src目錄下。
  進入/usr/src目錄中,開始安裝過程。進入/usr/src:
  cd /usr/src
  解開壓縮文件:
  tar xzvf jpegsrc.v6b.tar.gz
  命令完成後多了一個子目錄jpeg-6b,Jpeg的源碼文件就在其中。進入該子目錄:
  cd jpeg-6b
  該目錄中的install.doc文件詳細介紹了如何安裝Jpeg,照章行事即可。配置生成Makefile文件:
  ./configure
  命令完成後該目錄下多了個Makefile文件。Makefile文件是許多軟件編譯、安裝的配置和過程控制文件,十分重要,應該學會看懂它的內容。開始編譯:
  make
  命令完成後該目錄下多了許多文件,其中重要的是libjpeg.a和libjpeg.so。安裝:
  make install
  命令完成後,jpeglib.h被拷到/usr/include目錄下,libjpeg.a和libjpeg.so被拷到/usr/local/lib目錄下
2. ttf 的安裝和配置
   http://www.freetype.org
   freetype-1.3.1.tar.gz
   tar -xzvf freetype-1.3.1.tar.gz
  ./configure
  命令完成後該目錄下多了個Makefile文件。Makefile文件是許多軟件編譯、安裝的配置和過程控制文件,十分重要,應該學會看懂它的內容。開始編譯:
  make
  make install
  編譯gd 的時候有error don't found the freetype.h 所以
  cp /usr/local/include/freetype/* /usr/local/include/
3, zlib 安裝:
  Becaust the note, you must install the zlib first!
  Before installing libpng, you must first install zlib. zlib
  can usually be found wherever you got libpng. zlib can be
  placed in another directory, at the same level as libpng.
  Note that your system might already have a preinstalled
  zlib, but you will still need to have access to the
  zlib.h and zconf.h include files that correspond to the
  version of zlib that's installed.
  http://www.gzip.org/zlib/
  ftp://ftp.uu.net/graphics/png/src/zlib-1.1.3.tar.gz
  ./configure
  make
  make install
4. libpng 安裝:
  Read INSTALL
  http://www.libpng.org/pub/png/
  libpng-1.2.0.tar.gz
  UNIX example: cp scripts/makefile.std makefile
  make
  make install
5.GD-1.8.3的安裝和配置
  GD的主要文件有gd.h, libgd.a等。獲取GD源碼的地址為:http://www.boutell.com/gd/
  取得的文件為gd-1.8.3.tar.gz,放於/usr/src目錄下。已知道該版本的GD不支持GIF,但想來象我一樣希望GD同時支持GIF和 JPEG的人不少,於是有人做了個補丁,把對GIF的支持加回去了。看起來這是個英國人吧,他的Email地址為[email protected]。獲取補丁源碼的地址為http://www.webofsin.com/gd - 1.8.3-gif.patch 取得的文件為gd-1.8.3-gif.patch,放於/usr/src目錄下。進入/usr/src:
  cd /usr/src
  解開壓縮文件:
  tar xzvf gd-1.8.3.tar.gz
  命令完成後多了一個子目錄gd-1.8.3,GD的源碼文件就在其中。給源碼打補丁:
  patch -p0
  命令完成後gd-1.8.3子目錄下多了個gd_gif.c文件,而文件gd.h和Makefile也被作了相應修改。進入該子目錄:
  cd gd-1.8.3
  缺省情況下,GD庫編譯時並不加入JPEG支持,得修改Makefile文件。修改Makefile文件,使得:
  CFLAGS=-O -DHAVE_XPM -DHAVE_JPEG -DHAVE_LIBTTF
  LIBS=-lm -lgd -lpng -lz -ljpeg -lttf -lXpm -lX11
  此後,編譯並安裝:
  make
  make install
  命令完成後,gd.h被拷到/usr/local/include目錄下,libgd.a被拷到/usr/local/lib目錄下。
  php apache 以SO方式安裝:
6、 php-4.0.6的安裝和配置
  PHP的主要文件有libphp4.a, libphp4.so等。獲取PHP源碼的地址為:http://php.net
  取得的文件為php-4.0.6.tar.gz,放於/usr/src目錄下。
  進入/usr/src目錄並解壓文件:
  cd /usr/src
  tar xzvf php-4.0.6.tar.gz
  命令完成後多了一個子目錄php-4.0.6,PHP的源碼文件就在其中。進入該子目錄:
  cd php-4.0.6
  php
  ./configure
    --with-apache=/usr/local/apache_1.3.26
    --enable-track-vars
    --enable-debug
    --enable-url-includes
    --enable-sockets
    --with-gd=/usr/local
    --enable-gd-native-ttf
    --with-ttf=/usr/local
    --with-jpeg-dir=/usr/local
    --with-zlib-dir=/usr/local
    --with-png-dir=/usr/local
    
  編譯並安裝:
  make
  make install
  命令完成後,libphp4.so被拷到/usr/lib/apache目錄下。
7、apache_1.3.12的安裝和配置
  ./configure
    --prefix=/usr/local/apache
    --activate-module=src/modules/php4/libphp4.a
    --enable-module=so
    --enable-module=negotiation
    --enable-module=status
    --enable-module=include
    --enable-module=autoindex
    --enable-module=cgi
    --enable-module=asis
    --enable-module=imap
    --enable-module=actions
    --enable-module=userdir
    --enable-module=alias
    --enable-module=setenvif
  make
  make install
Copyright © Linux教程網 All Rights Reserved