cd libxml2-2.6.30
./configure--prefix=/usr/local/libxml2/
make
make install
cd../libmcrypt-2.5.8
./configure--prefix=/usr/local/libmcrypt/
make
make install
cd ../libmcrypt-2.5.8/libltdl/
./configure--enable-ltdl-install
make
make install
cd../../zlib-1.2.3
./configure
make
make install
cd../libpng-1.2.31
./configure--prefix=/usr/local/libpng/
make
make install
cd ../jpeg-6b
mkdir/usr/local/jpeg6
mkdir /usr/local/jpeg6/bin
mkdir/usr/local/jpeg6/lib
mkdir/usr/local/jpeg6/include
mkdir -p/usr/local/jpeg6/man/man1
./configure--prefix=/usr/local/jpeg6/ --enable-shared --enable-static
make
make install
cd../freetype-2.3.5
./configure--prefix=/usr/local/freetype/
make
make install
cd../autoconf-2.61
./configure
make
make install
cd ../gd-2.0.35
./configure--prefix=/usr/local/gd2/ --with-jpeg=/usr/local/jpeg6/--with-freetype=/usr/local/freetype/
make
make install
cd ../ncurses-5.6
./configure--with-shared --without-debug --with-ada --enable-overwrite
make
make install
1.安装apache
cd ../httpd-2.2.9
./configure--prefix=/usr/local/apache2/ --sysconfdir=/etc/httpd/ --with-included-apr--disable-userdir --enable-so --enable-deflate=shared --enable-expires=shared--enable-rewrite=shared --enable-static-support
make
make install
2.安装php
cd ../php-5.2.6
./configure--prefix=/usr/local/php/ --with-config-file-path=/usr/local/php/etc/--with-apxs2=/usr/local/apache2/bin/apxs --with-libxml-dir=/usr/local/libxml2/ --with-jpeg-dir=/usr/local/jpeg6/--with-freetype-dir=/usr/local/freetype/ --with-gd=/usr/local/gd2/--with-mcrypt=/usr/local/libmcrypt/ --enable-soap --enable-mbstring=all--enable-sockets --with-ldap --with-gettext
#yum installlibtool
#yum install libtool-ltdl
make
make install
cp php.ini-dist/usr/local/php/etc/php.ini
vi/etc/httpd/httpd.conf
AddTypeapplication/x-httpd-php .php .phtml(添加)
/usr/local/apache2/bin/apachectlrestart
保存退出。
3.安装bdb
tar zcvfdb-4.5.20.tar.gz
cd db-4.5.20/build_unix//在这个目录里编译(不同于其它大多数linux程序)
../dist/configure--prefix=/usr/local/db
make
make install
vi /etc/ld.so.conf
/usr/local/db/lib
/sbin/ldconfig
4.安装openldap
vi /etc/profile
LD_RUN_PATH=/usr/local/db/lib //这个可能不是必须的。
LD_LIBRARY_PATH=/usr/local/db/lib //必须的,少了安装会报错
export LD_RUN_PATH LD_LIBRARY_PATH //导出变量,保存退出
source /etc/profile //让刚设置的变量立刻生效
envCPPFLAGS="-I /usr/local/db/include" LDFLAGS="-L/usr/local/db/lib" 记得要启用bdb,要不我们的bdb就白装了。
./configure--prefix=/usr/local/openldap --enable-bdb
//CPP和LD这两个环境变量应该可以跟刚才的LD_LIBRARY那个变量一样设置在profile文件里的,但是大家都是在这里设置,可能是因为这两个变量都是只在安装时用一次吧,所以我这里也就随大家写在命令里而不是写在profile里了,(装64位系统的时候又报错缺少ltdl.h,后来locateltdl找到了它的位置,然后命令改成了env CPPFLAGS="-I /usr/local/db/include" LDFLAGS="-L/usr/local/db/lib" LDFLAGS="-L /usr/share/libtool/libltdl"./configure --prefix=/usr/local/openldap --enable-bdb,)(试过多种方法64位系统总是提示缺少ltdl.h,最后实在耗不起那个时间了然后就直接yum install openldap-servers了事,此时却发现yum安装时安装了一个名为libtool-ltdl-1.5.22-7.el5_4的依赖包,难道就是因为缺少这个包导致的编译通不过?)(yum安装openldap主要是安装openldap、openldap-devel、openldap-servers、openldap-clients这四种包)
make depend //解决依赖问题
make
make test //有自信的可以不检测,这个不是必须的。
make install
5.修改openldap配置文件
vi/usr/local/openldap/etc/openldap/slapd.conf
include /usr/local/openldap/etc/openldap/schema/core.schema
这些schema都在openldap安装目录下的etc/openldap/schema下
include /usr/local/openldap/etc/openldap/schema/corba.schema
include /usr/local/openldap/etc/openldap/schema/cosine.schema
include /usr/local/openldap/etc/openldap/schema/dyngroup.schema
include /usr/local/openldap/etc/openldap/schema/inetorgperson.schema
include /usr/local/openldap/etc/openldap/schema/java.schema
include /usr/local/openldap/etc/openldap/schema/misc.schema
include /usr/local/openldap/etc/openldap/schema/nis.schema
include /usr/local/openldap/etc/openldap/schema/openldap.schema
database bdb
// bdb就是我们的Berkeley DB数据库了
suffix "dc=davy,dc=org"
//suffix(后缀),以后所有的ldap数据记录都将放在它的下面,你可以把它看成是数据库的总库,之后的phpldapadmin中也需要指定它并且要跟这里的设置一致
rootdn "cn=root,dc=davy,dc=org"
//openldap的管理者(就跟系统的管理员类似,openldap的“大权在握者”)
rootpw {SSHA}rWWrzQ60N42lNONcZFaKovPrgWSjn5/Z
//管理者密码,该密码串需要通过ldappasswd命令(openldap安装目录下的bin目录里)来生成
directory /usr/local/openldap/var/lib/openldap
//指定openldap数据库的存放目录
保存退出
/usr/local/openldap/bin/ldappasswd //生成管理者密码
/usr/local/openldap/libexec/slapd //启动openldap (解决alock package isunstable) chown ldap:ldap/usr/local/openldap/var/lib/openldap/* (解决No DB_CONFIG file) cp/etc/openldap/DB_CONFIG.example /usr/local/openldap/var/lib/openldap/DB_CONFIG chown ldap:ldap/usr/local/openldap/var/lib/openldap/DB_CONFIG chmod 600 /usr/local/openldap/var/lib/openldap/*