lanp(linux+apache+gd库+php)的安装

ps1:在源码安装时,如果配置通过(./configure),但是make(生成makefile失败),此时可以用make clean命令清除编译的结果,从新进行编译

ps2.安装PHP常见错误解决error: libjpeg.(a|so),error:libpng.(a|so) not found,error: Cannot find ldap

我都安装了的,为什么就找不到呢?找不到其实就应试想到它的搜索位置里面是没有的,要不然才不会说not found

 [root@GFS_Server php-5.2.13]# rpm -qa | grepjpeg
libjpeg-6b-33
libjpeg-6b-33

 32位和64位的都装了。你可以强制删除两个包,再重装64位的包。rpm --allmatches --nodeps这种方法真是损系统又损你.有时候强制执行的东西也会随便把lib中的一些包给强制删了..所以我认为不建议这么做,重复就让它重复吧,没关系的!

[root@GFS_Serverphp-5.2.13]#locate libjpeg.so
[root@GFS_Server php-5.2.13]# locate libjpeg.a
如果是源码安装的,你肯定要添加--with-jpeg-dir=/usr/local/jpeg6,那么在./configure时,会去这个目录下的lib/下寻找libjpeg.so/libjpeg.a文件。此时肯定这个目录下没有这文件!!!

另外:(a|so)这些结尾的都是相应包的库文件

如果没有指定jpeg的目录,./configure会自动的去/usr/lib下寻找,这些库文件。但是实际上在安装的时候(rpm),系统会默认的将这些库文件放在/usr/lib64下(64位的系统--32位的系统不会出现这个问题)

解决:cp -frp /usr/lib64/libpng*   /usr/lib/




==================================LADP安装=====================
总共11个源码包
autoconf-2.61.tar.gz
httpd-2.2.8.tar.gz
libxml2-2.6.19.tar.gz
mysql-5.0....
freetype-2.1.10.tar.gz
jpegsrc.v6b.tar.gz
libpng-1.2.24.tar.gz
zlib-1.2.3.tar.gz
gd-2.0.35.tar.gz
php-5.2.5.tar.gz


检查环境是否安装gcc
# gcc -v

安装GD库==============================
安装前应先依次安装zlib/libpng/freetype/jpegsrc.v6b/autoconf/gd

===============================================================================

安装zlib
tar xzvf zlib-1.2.3.tar.gz
cd zlib-1.2.3
./configure --prefix=/usr/local/zlib
make
make install

ps:64位的linux系统用./configure生成的makefile编译,虽然不会出错,但是在之后安装php是肯定会报错(/usr/bin/ld:/usr/local/lib/libbz2.a: relocation R_X86_64_32 against `a local symbol' cannot be used when making a shared object; recompile with -fPIC)------------解决方案:vi Makefile
CFLAGS上加入 -fPIC
CFLAGS = -fPIC  xxxxxxxxxxxxxxxxxx
make && make install && makeclean

此时问题解决

===============================================================================

安装libpng
tar xzvf libpng-1.2.24.tar.gz
cd libpng-1.2.24
cp scripts/makefile.linux makefile
make
make install

==========================================================================

安装freetype TTF包
tar xzvf freetype-2.1.10.tar.gz
cd freetype-2.1.10
./configure --prefix=/usr/local/freetype
make
make install

=========================================================================

安装jpeg6
tar xzvf jpegsrc.v6b.tar.gz
cd jpeg-6b
mkdir -p /usr/local/jpeg6
mkdir -p /usr/local/jpeg6/bin
mkdir -p /usr/local/jpeg6/lib
mkdir -p /usr/local/jpeg6/include
mkdir -p /usr/local/jpeg6/man
mkdir -p /usr/local/jpeg6/jpeg6man1
mkdir -p /usr/local/jpeg6/man/man1
./configure --prefix=/usr/local/jpeg6--enable-share --enable-static
make
make install
最后安装jpeg6库文件
make install-lib
使用libtool完成库的安装
libtool --finish /usr/local/jpeg6//lib /


注:在源码安装jpeg6时报错:
make: ./libtool: Command not found 
make: *** [jcapimin.lo] Error 127
错误分析:由于libtool版本过低导致的,重新下载新版本的libtool以默认方式安装,(一般都是64位的系统上面报错)
1x64bit的服务器就是报这个错误,可以直接执行:
cp /usr/share/libtool/config.sub . 
cp /usr/share/libtool/config.guess .
而不需另行安装(必须要从新编译)
2x64bit的系统安装jpeg
./configure --prefix=/usr/local/jpeg6 --enable-share --enable-static
make
make install

64位的系统就不用添加以下两个步骤了,不然在安装gd时是报错!!!

---make install-lib
---libtool --finish /usr/local/jpeg6//lib /


===============================================================================

安装autoconf
tar xzvf autoconf-2.61.tar.gz
cd autoconf-2.61
./configure --prefix=/usr
make
make install

==============================================================================

安装GD
tar xzvf gd-2.0.35.tar.gz
cd gd-2.0.35
./configure --prefix=/usr/local/gd--with-jpeg=/usr/local/jpeg6 --with-png=/usr/local/lib--with-zlib=/usr/local/zlib --with-freetype=/usr/local/freetype
make
make install
cp gd.h /usr/local/lib #
将生成的头文件拷贝到lib目录下,否则会出

===============================================================================

安装freetds(用来连接MS SQLServerSybase数据库更具需要是否安装)
tar xzvf freetds-0.82.tar.gz
cd freetds-0.82
./configure --prefix=/usr/local/freetds--with-tdsver=8.0
make
make install

===============================================================================

安装mysql===见另外文章==================================

==============================================================================安装apache

./configure--prefix=/usr/local/apache2 --enable-so --enable-ssl=static--with-ssl=/usr/local/ssl --with-z-dir=/usr/local/zlib

make

make install

设置apache 自启动
echo "/usr/local/apache2/bin/apachectlstart">>/etc/rc.d/rc.local
检查是否加入自启动了
cat /etc/rc.d/rc.local

ps:在配置的时候报错:configure: error: ...No recognized SSL/TLS toolkit detected

解决:安装openssl-devel

===============================================================================

安装PHP
PHP 对XML的支持是建立在libxml2库的基础上的

安装php之前先安装libxml2
tar -zxvf libxml2-2.6.19.tar.gz
cd libxml2-2.6.19

./configure --prefix=/usr/local/libxml2 --with-zlib=/usr/local/zlib/
make
make install

复制配置文件
cp xml2-config /usr/bin

===============================================================================

说明:

php必要的选项:
--prefix=/usr/local/php
--with-apxs2=/usr/local/apache/bin/apxs
--with-mysql=/usr/local/mysql/
--with-libxml-dir
--enable-mbstring

这是让PHP支持GD库的配置选项:
--with-gd=/usr/local/gd2/
--with-jpeg-dir=/usr/local/jpeg6/
--with-png
--with-zlib-dir=/usr/lib
--with-freetype-dir=/usr/local/freetype

===============================================================================

接着安装php
检查系统是否已经安装php,如果安装将其卸载
将多个相关软件包一次性卸载:
for i in 'rpm -qa | grep -i php'
>do rpm -e $i --nodeps
>done

tar-zxvf php-5.2.5.tar.gz
cd php-5.2.5
mkdir -p /usr/local/php5
./configure --prefix=/usr/local/php5--with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql          --with-libxml-dir=/usr/local/libxml2--with-png-dir=/usr/local/lib          --with-jpeg-dir=/usr/local/jpeg6--with-zlib-dir=/usr/local/zlib        --with-freetype-dir=/usr/local/freetype--with-gd=/usr/local/gd -    -enable-soap    --enable-mbstring=all

make
make test
make install

建立php配置文件
cp php.ini-dist /usr/local/php5/lib/php.ini
修改apache配置文件添加php支持
vi /usr/local/apache2/conf/httpd.conf
加入(注意之前加过了就不用再加,否则apache不能启动:
LoadModule php5_module modules/libphp5.so
在此下面加入以下
AddType application/x-httpd-php .php   -


你可能感兴趣的:(ladp的安装)