php /usr/lib/libjpeg.so.62,linux PHP的装配
linux PHP的安裝
2. 紅帽Linux PHP
2.1. 安裝linux PHP
查看系統(tǒng)是否自帶了php,若自帶先卸載,否則安裝后會(huì)出錯(cuò)。
(1)下載php源文件php-5.3.6.tar.gz,地址為http://cn2.php.net/downloads.php
(2)執(zhí)行如下命令,解壓源文件,以默認(rèn)方式安裝php
tar zxvf php-5.3.6.tar.gz
cd php-5.3.6
./configure --prefix=[php安裝目錄] --with-config-file-path=[php安裝目錄] --with-apxs2=[apache安裝目錄]/bin/apxs
make
make install
(3) 另一種安裝方式是在系統(tǒng)中已經(jīng)安裝了apache、gd庫的情況下,安裝時(shí)希望把這些軟件編譯到php中。
安裝gd庫需要jpeg、png等,jpeg的主要文件有jpeglib.h, libjpeg.a, libjpeg.so等。首先檢查系統(tǒng)中安裝了沒有,到/usr/include目錄下看有無jpeglib.h,到/usr/lib目錄下看有無 libjpeg.a和libjpeg.so,若沒有則需要先安裝jpeg。要查看gd是否安裝,GD的主要文件有g(shù)d.h, libgd.a等,安裝完成后,/usr/local/include目錄下查看有無gd.h,若沒有則需要統(tǒng)一安裝gd庫,安裝gd請(qǐng)參照2.5
在64位系統(tǒng)下還需要運(yùn)行下面兩句命令,來覆蓋掉原有的/usr/lib/libjpeg.so和/usr/lib/libpng.so:
ln -s /usr/lib64/libjpeg.so.62.0.0 /usr/lib/libjpeg.so
ln -s /usr/lib64/libpng.so.3.10.0 /usr/lib/libpng.so
tar zxvf php-5.3.6.tar.gz
cd php-5.3.6
./configure --with-config-file-path=[php安裝目錄] --prefix=[php安裝目錄] --with-bz2 --enable-zip --enable-mbstring --with-apxs2=[apache安裝目錄]/bin/apxs --with-zlib-dir=/usr/include/ --with-libxml-dir=/usr/lib64/ --with-gd --with-jpeg-dir=/usr/ --with-png-dir=/usr/ --with-freetype-dir=/usr/ --enable-soap --enable-calendar
make
make install
(4) 將php-5.3.6目錄中的php.ini-development(若是開發(fā)環(huán)境建議用php.ini-development,若是生產(chǎn)或測(cè)試環(huán)境建議用php.ini-production)文件復(fù)制到php安裝目錄,并重命名為php.ini
2.2. 修改apache配置
以上步驟操作成功后會(huì)在2.1的(3)步驟的命令中“--with-apxs2”指定的apache的modules文件夾生成libphp5.so,修改apache的httpd.conf文件,添加如下內(nèi)容:
LoadModule php5_module modules/libphp5.so
PHPIniDir [php.ini所在目錄]
AddType application/x-httpd-php .php
若“ LoadModule php5_module modules/libphp5.so ”已存在,則不需添加。
找到默認(rèn)文件,在其后添加默認(rèn)文件index.php和index.php3:
DirectoryIndex index.html index.php index.php3
安裝完成后在htdocs目錄下,新建一個(gè)PHP文件如:
vim test.php
phpinfo();
?>
然后在IE中訪問:http://機(jī)器名或IP/test.php。若PHP列表頁面出現(xiàn)則安裝成功。
2.3. 安裝擴(kuò)展模塊
php中一般需要追加編譯curl、mbstring和mcrypt,若系統(tǒng)中安裝了數(shù)據(jù)庫mysql則還需要追加mysql、pdo和pdo_mysql,若頁面提示"Couldn't locate driver named mysql”,則多半是因?yàn)闆]有追加pdo_mysql的緣故。
在追加mcrypt時(shí)可能會(huì)提示缺少libmcrypt,這時(shí)需要自己下載安裝libmcrypt,最好安裝最新版本的,本例中用libmcrypt-2.5.8.tar。
下面以追加mbstring模塊為例,其他模塊的方式相同。
方式一:初始編輯安裝
進(jìn)入php-5.3.6目錄,執(zhí)行如下命令:
./configure --prefix=[php安裝目錄] --with-config-file-path=[php安裝目錄] --with-apxs2=[apache安裝目錄]/bin/apxs --enable-mbstring=shared
make
make install
方式二:追加編譯安裝
進(jìn)入php-5.3.6/ext/mbstring目錄,執(zhí)行如下命令:
[php安裝目錄]/bin/phpize
./configure --with-php-config=[php安裝目錄]/bin/php-config --with-mbstring
make
make install
安裝成功后會(huì)在“[php安裝目錄]/lib/php/extensions/no-debug-non-zts-20060613”目錄下生成mbstring.so文件,在php安裝路徑下新建ext目錄,cp mbstring.so [php安裝路徑]/ext/
然后修改php.ini文件,添加如下內(nèi)容:
extension = mbstring.so
extension_dir = "[php安裝路徑]/ext"
若extension_dir = "[php安裝路徑]/ext"在php.ini存在,則不需添加。
安裝其它擴(kuò)展模塊的命令都一樣,只將mbstring換成對(duì)應(yīng)的模塊名即可。
安裝libmcrypt
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8/
./configure
make
make install
/sbin/ldconfig
cd libltdl/
./configure --enable-ltdl-install
make
make install
ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la
ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so
ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4
ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8
2.4. 添加數(shù)據(jù)庫支持
(1)mysql數(shù)據(jù)庫(以mysql-5.5.8-1及64位機(jī)器為例)
查看系統(tǒng)是否自帶了mysql,若自帶先卸載,否則安裝后會(huì)出錯(cuò)
(1.1)安裝以下mysql包:
MySQL-client-community-5.1.44-1.rhel5.x86_64.rpm
MySQL-devel-community-5.1.44-1.rhel5.x86_64.rpm
MySQL-shared-community-5.1.44-1.rhel5.x86_64.rpm
MySQL-shared-compat-5.1.44-1.rhel5.x86_64.rpm
例子:rpm -ivh MySQL-client-community-5.1.44-1.rhel5.x86_64.rpm
(1.2)安裝完MySQL-shared-compat-5.1.44-1.rhel5.x86_64.rpm后,記住下面提供的文件路徑
[root@bogon mysql]# rpm -ivh MySQL-shared-compat-5.1.44-1.rhel5.x86_64.rpm
Preparing... ########################################### [100%]
file/usr/lib64/libmysqlclient.so.16.0.0from install of MySQL-shared-compat-5.1.44-1.rhel5.x86_64 conflicts with file from package MySQL-shared-compat-5.1.44-1.rhel5.x86_64
file/usr/lib64/libmysqlclient_r.so.16.0.0from install of MySQL-shared-compat-5.1.44-1.rhel5.x86_64 conflicts with file from package MySQL-shared-compat-5.1.44-1.rhel5.x86_64
cp -rp/usr/lib64/libmysqlclient_r.so.16.0.0 /usr/lib/libmysqlclient.so
PS:在64位計(jì)算機(jī)上安裝時(shí),需將“/usr/lib64”目錄下的“l(fā)ibmysqlclient.so.[版本號(hào)]”(如libmysqlclient_r.so.16.0.0)文件復(fù)制到“/usr/lib”目錄,并去調(diào)版本號(hào)。(注:安裝高版本時(shí)可能不出現(xiàn)提示,但也要進(jìn)行復(fù)制這一步)
若需要數(shù)據(jù)庫的服務(wù)器則還需要安裝MySQL-server-community-5.1.44-1.rhel5.x86_64.rpm,且server放在最后安裝。
修改數(shù)據(jù)庫root用戶的秘密:/usr/bin/mysqladmin -u root password 'new-password'
(1.3) 進(jìn)入php-5.2.9/ext/mysql目錄,執(zhí)行如下命令(PDO和PDO_mysql的追加相同):
[php安裝目錄]/bin/phpize
./configure --with-php-config=[php安裝目錄]/bin/php-config --with-mysql
make
make install
(1.4)安裝完成后會(huì)生成一個(gè)mysql.so的文件
[root@bogon mysql]# make install
Installing shared extensions: /opt/php/lib/php/extensions/no-debug-non-zts-20060613/
[root@bogon mysql]# cd /opt/php/lib/php/extensions/no-debug-non-zts-20060613/
[root@bogon no-debug-non-zts-20060613]# ll
total 156
-rwxr-xr-x 1 root root 148709 Jun 9 17:57mysql.so
在php安裝目錄新建ext目錄如:/opt/php/ext。將mysql.so文件復(fù)制到此目錄下,?? 如:cp /opt/php/lib/php/extensions/no-debug-non-zts-20060613/mysql.so /opt/php/ext/
(1.5)修改php.ini文件加載mysql組件,添加extension_dir=/opt/php/ext和extension=mysql.so,如果有extension_dir=/opt/php/ext則不需要增加
; extension folders as well as the separate PECL DLL download (PHP 5).
; Be sure to appropriately set the extension_dir directive.
;
extension_dir=/opt/php/ext
extension=mysql.so
;extension=php_bz2.dll
;extension=php_curl.dll
(1.6) 驗(yàn)證是否安裝成功
再次在IE中訪問:機(jī)器名或IP/test.php 搜索mysql,出現(xiàn)mysql組件即表示成功,其它組件一樣。(啟動(dòng)mysql:/etc/init.d/mysql start)
(2) oracle數(shù)據(jù)庫(以oracle 10g及64位機(jī)器為例)
(2.1) 解壓安裝oracle客戶端instantclient,配置$ORACLE_HOME環(huán)境變量,進(jìn)入[oracle安裝路徑]目錄,執(zhí)行如下命令創(chuàng)建文件鏈接:
ln -s libclntsh.so.10.1 libclntsh.so
ln -s libocci.so.10.1 libocci.so
(2.2) 可2.6中說明的“初始編譯安裝”或“追加編譯安裝”,為./configure命令追加--with-oci8=instantclient,[oracle安裝路徑]
(2.3) 若為“追加編譯安裝”,則會(huì)生成oci8.so文件,將該文件放到php.ini中extention_dir所指定的目錄,然后在php.ini文件加上extention=oci8.so
2.5. 添加gd支持
向php添加gd庫的詳細(xì)說明及gd的安裝步驟,詳見http://wecoo.iteye.com/blog/1158858
添加gd支持有兩種方式,一種是系統(tǒng)自帶有g(shù)d時(shí),可以用初始安裝的方式,見2.1的(3);另一種是安裝gd第三方插件,操作步驟如下:
(1) 下載下列包:
jpegsrc.v6b.tar.gz
libpng-(version).tar.gz
freetype-(version).tar.gz
gettext-(version).tar.gz
gd-(version).tar.gz
(2) 安裝jpeg-6b(支持jpeg):
(2.1) 執(zhí)行如下命令創(chuàng)建目錄:
mkdir -p [jpeg-6b安裝目錄]
mkdir -p [jpeg-6b安裝目錄]/bin/
mkdir -p [jpeg-6b安裝目錄]/lib/
mkdir -p [jpeg-6b安裝目錄]/include/
mkdir -p [jpeg-6b安裝目錄]/man/
mkdir -p [jpeg-6b安裝目錄]/man/man1/
(2.2) 解壓jpegsrc.v6b.tar.gz
(2.3) 進(jìn)入[jpeg-6b解壓目錄],執(zhí)行如下命令,替換文件:
cp /usr/share/libtool/config.sub .
cp /usr/share/libtool/config.guess .
(2.4) 進(jìn)入[jpeg-6b解壓目錄]執(zhí)行如下命令安裝jpeg-6b:
./configure --prefix=[jpeg-6b安裝目錄] --enable-shared --enable-static
make
make install
(3) 安裝libpng(支持png):
解壓libpng-(version).tar.gz,進(jìn)入[libpng解壓目錄]執(zhí)行如下命令安裝libpng:
./configure --prefix=[libpng安裝目錄] --enable-shared --enable-static
make
make install
(4) 安裝freetype:
解壓freetype-(version).tar.gz,進(jìn)入[freetype解壓目錄]執(zhí)行如下命令安裝freetype:
./configure --prefix=[freetype安裝目錄]
make
make install
(5) 安裝gettext(安裝gd可能需要):
解壓gettext-(version).tar.gz,進(jìn)入[gettext解壓目錄]執(zhí)行如下命令安裝gettext:
./configure --prefix=[gettext安裝目錄]
make
make install
(6) 安裝gd:
解壓gd-(version).tar.gz,進(jìn)入[gd解壓目錄]執(zhí)行如下命令安裝gd:
./configure --prefix=[gd安裝目錄] --with-jpeg=[jpeg-6b安裝目錄] --with-png=[libpng安裝目錄] --with-freetype=[freetype安裝目錄] --with-gettext=[gettext安裝目錄]
(如./configure --prefix=/opt/gd-2.0.35 --with-jpeg=/opt/jpeg-6b/ --with-png=/opt/libpng-1.2.35/ --with-freetype=/opt/freetype-2.3.5/ --with-gettext=/opt/gettext-0.17/)
make
make install
安裝時(shí)如果出現(xiàn)
configure.ac:64: error: possibly undefined macro: AM_ICONV
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
查看/usr/lib目錄下的libattr.a是不是灰色的,沒有權(quán)限。如果是輸入以下命令
chmod 777 libattr.a
(7) 將gd添加到php
(7.1) 初始編譯安裝
編譯php時(shí),向./configure命令追加如下內(nèi)容--with-jpeg=[jpeg-6b安裝目錄] --with-png=[libpng安裝目錄] --with-freetype=[freetype安裝目錄] --with-gettext=[gettext安裝目錄] --with-gd=[gd安裝目錄]
(如./configure --with-config-file-path=/opt/php --prefix=/opt/php --with-bz2 --enable-zip --enable-mbstring --with-apxs2=/opt/apache2/bin/apxs --with-zlib-dir=/usr/include/ --with-libxml-dir=/usr/lib64/ --with-jpeg-dir=/opt/jpeg-6b --with-png-dir=/opt/libpng-1.2.35 --with-freetype-dir=/opt/freetype-2.3.5 --with-gettext=/opt/gettext-0.17 --with-gd=/opt/gd-2.0.35 --enable-soap --enable-calendar)
具體步驟參照2.1的(3)
(7.2) 追加編譯安裝
進(jìn)入“[php解壓目錄]/ext/gd”目錄,執(zhí)行如下命令:
[php安裝目錄]/bin/phpize
./configure --with-php-config=[php安裝目錄]/bin/php-config --with-jpeg=[jpeg-6b安裝目錄] --with-png=[libpng安裝目錄] --with-freetype=[freetype安裝目錄] --with-gettext=[gettext安裝目錄] --with-gd=[gd安裝目錄]
make
make install
安裝成功后會(huì)在“[php安裝目錄]/lib/php/extensions/no-debug-non-zts-20060613”目錄下生成gd.so文件,
然后cp [php安裝目錄]/lib/php/extensions/no-debug-non-zts-20060613/gd.so /opt/php/ext
(7.3) 修改php.ini文件加載gd組件,添加extension_dir=/opt/php/ext和extension=gd.so,如果有extension_dir=/opt/php/ext則不需要增加
extension_dir=/opt/php/ext
extension=gd.so
修改php.ini文件,操作同2.3的方式二。
若追加編譯不成功,則用初始編譯,參照2.1的(3)
2.6. 添加soap支持?? cd php-5.1.6/ext/soap
/usr/local/php/bin/phpize
./configure –with-php-config=/usr/local/php/bin/php-config –enable-soap
make
make install
編譯后的soap.so文件保存在了/usr/local/php/lib/php/extensions/no-debug-non-zts-20050922目錄下
修改php.ini文件
extension=soap.so
3. 參考資料
gd介紹
http://wecoo.iteye.com/blog/1158858
pdo介紹:
http://www.phpchina.com/html/36/9136-8584.html
linux環(huán)境php安裝:
http://blog.chinaunix.net/u/19637/showart_489123.html
http://blog.chinaunix.net/u/16215/showart_438082.html
http://www.freeplug.org/blog/read.php?81
1 樓
xu-zhx
2012-02-13
贊,寫的真詳細(xì)
總結(jié)
以上是生活随笔為你收集整理的php /usr/lib/libjpeg.so.62,linux PHP的装配的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 趣店是干什么的
- 下一篇: linux定时创建文件,linux下如何