LAMP源碼安裝

下載好所需的軟件包


[root@CentOS5 ~]#cd /samba

[root@CentOS5samba]# ls

autoconf-2.61.tar.gz   httpd-2.2.9.tar.gz      libxml2-2.6.30.tar.gz

freetype-2.3.5.tar.gz  jpegsrc.v6b.tar.gz      mysql-5.0.95.tar.gz

gd-2.0.35.tar.gz       libmcrypt-2.5.8.tar.gz  php-5.4.0.tar.bz2

gettext-0.17.tar.gz    libpng-1.2.31.tar.gz    zlib-1.2.3.tar.gz


安裝libxml2

[root@CentOS5samba]#tar zxvf libxml2-2.6.30.tar.gz -C /usr/local/src/

[root@CentOS5samba]#cd /usr/local/src/libxml2-2.6.30/

[[email protected]]#./configure --prefix=/usr/local/libxml2

[[email protected]]#make && make install


安裝libmcrypt

[[email protected]]#cd /samba

[root@CentOS5samba]#tar zxvf libmcrypt-2.5.8.tar.gz -C /usr/local/src/

[root@CentOS5samba]#cd /usr/local/src/libmcrypt-2.5.8/

[[email protected]]#./configure --prefix=/usr/local/libmcrypt

[[email protected]]#make && make install


安裝zlib

[[email protected]]#cd /samba

[root@CentOS5samba]#tar zxvf zlib-1.2.3.tar.gz -C /usr/local/src/

[root@CentOS5samba]#cd /usr/local/src/zlib-1.2.3/

[[email protected]]#./configure --prefix=/usr/local/zlib

[[email protected]]#make && make install


安裝libpng

[[email protected]]#cd /samba

[root@CentOS5samba]#tar zxvf libpng-1.2.31.tar.gz -C /usr/local/src/

[root@CentOS5samba]#cd /usr/local/src/libpng-1.2.31/

[[email protected]]#./configure --prefix=/usr/local/libpng

[[email protected]]#make && make install


安裝jpegsrc.v6b

[[email protected]]#cd /samba

[root@CentOS5samba]#tar zxvf jpegsrc.v6b.tar.gz -C /usr/local/src/

[root@CentOS5samba]#cd /usr/local/src/jpeg-6b/

[root@CentOS5jpeg-6b]#mkdir /usr/local/jpeg6

[root@CentOS5jpeg-6b]#mkdir /usr/local/jpeg6/bin

[root@CentOS5jpeg-6b]#mkdir /usr/local/jpeg6/lib

[root@CentOS5jpeg-6b]#mkdir /usr/local/jpeg6/include

[root@CentOS5jpeg-6b]#mkdir -p /usr/local/jpeg6/man/man1

[root@CentOS5jpeg-6b]#./configure \

--prefix=/usr/local/jpeg6/ \

--enable-shared \

--enable-static

[root@CentOS5jpeg-6b]#make && make install


安裝freetype

[root@CentOS5jpeg-6b]#cd /samba

[root@CentOS5samba]#tar zxvf freetype-2.3.5.tar.gz -C /usr/local/src/

[root@CentOS5samba]#cd /usr/local/src/freetype-2.3.5/

[[email protected]]#./configure --prefix=/usr/local/freetype

[[email protected]]#make && make install


安裝autoconf

[[email protected]]#cd /samba/

[root@CentOS5samba]#tar zxvf autoconf-2.61.tar.gz -C /usr/local/src/

[root@CentOS5samba]#cd /usr/local/src/autoconf-2.61/

[[email protected]]#./configure

[[email protected]]#make && make install


安裝gettext

[[email protected]]#cd /samba

[root@CentOS5samba]#tar zxvf gettext-0.17.tar.gz -C /usr/local/src/

[root@CentOS5samba]#cd /usr/local/src/gettext-0.17/

[[email protected]]#./configure --prefix=/usr/local/gettext

[[email protected]]#make && make install


安裝gd

[[email protected]]#cd /samba/

[root@CentOS5samba]#tar zxvf gd-2.0.35.tar.gz -C /usr/local/src/

[root@CentOS5samba]#cd /usr/local/src/gd-2.0.35/

[[email protected]]#./configure \

--prefix=/usr/local/gd2 \

--enable-m4_pattern_allow \

--with-zlib=/usr/local/zlib/ \

--with-jpeg=/usr/local/jpeg6/ \

--with-png=/usr/local/libpng/ \

--with-freetype=/usr/local/freetype/

[[email protected]]#make && make install


安裝apache

[[email protected]]#cd /samba

[root@CentOS5samba]#tar zxvf httpd-2.2.9.tar.gz -C /usr/local/src/

[root@CentOS5samba]#cd /usr/local/src/httpd-2.2.9/

[[email protected]]#./configure \

--prefix=/usr/local/apache2 \

--sysconfdir=/etc/httpd \

--with-z=/usr/local/zlib/ \

--with-included-apr \

--enable-so \

--enable-deflate=shared \

--enable-expires=shared \

--enable-rewrite=shared \

--enable-static-support

[[email protected]]#make && make install

[[email protected]]#vi /etc/httpd/httpd.conf

找到ServerName這一行,去掉前面的#,後面修改爲127.0.0.1:80

ServerName127.0.0.1:80

找到#AddType application/x-gzip .tgz這一行,在下面加入:

AddType application/x-httpd-php .php .php4 .php5

找到DirectoryIndex關鍵字,後面添加一個index.php

保存退出

創建php頁面

[[email protected]]#vi /usr/local/apache2/htdocs/index.php

<?php

   Phpinfo();

?>

稍後訪問,繼續往下做

[[email protected]]#/usr/local/apache2/bin/apachectl start (如果啓動報錯,試着kill掉程序在啓動)

[[email protected]]#netstat -nutlp | grep httpd

tcp        0      0 :::80                       :::*                        LISTEN      12225/httpd

[[email protected]]#echo "/usr/local/apache2/bin/apachectl start" >>/etc/rc.d/rc.local


安裝mysql

[[email protected]]#cd /samba/

[root@CentOS5samba]#tar zxvf mysql-5.0.95.tar.gz -C /usr/local/src/

[root@CentOS5samba]#cd /usr/local/src/mysql-5.0.95/

[[email protected]]#./configure \

--prefix=/usr/local/mysql \

--sysconfdir=/etc \

--with-extra-charsets=all \

--with-named-curses-libs=/usr/lib/libncursesw.so.5

[[email protected]]#make && make install

[[email protected]]#cp support-files/my-medium.cnf /etc/my.cnf

[[email protected]]#cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld

[[email protected]]# cd /usr/local/mysql/

[root@CentOS5mysql]#bin/mysql_install_db --user=mysql

[root@CentOS5mysql]#chown -R root .

[root@CentOS5mysql]#chgrp -R mysql .

[root@CentOS5mysql]#chown -R mysql var/

[root@CentOS5mysql]#/usr/local/mysql/bin/mysqld_safe --user=mysql &

[root@CentOS5mysql]#mysql -u mysql -p


安裝php

[root@CentOS5mysql]#cd /samba/

[root@CentOS5samba]#tar jxf php-5.4.0.tar.bz2 -C /usr/local/src/

[root@CentOS5samba]#cd /usr/local/src/php-5.4.0/

[[email protected]]#./configure \

--prefix=/usr/local/php \

--with-config-file-path=/usr/local/php/etc \

--with-apxs2=/usr/local/apache2/bin/apxs \

--with-mysql=/usr/local/mysql/ \

--with-libxml-dir=/usr/local/libxml2/ \

--with-png-dir=/usr/local/libpng/ \

--with-jpeg-dir=/usr/local/jpeg6/ \

--with-freetype-dir=/usr/local/freetype/ \

--with-gd=/usr/local/gd2/ \

--with-zlib-dir=/usr/local/zlib/ \

--with-mcrypt=/usr/local/libmcrypt/ \

--with-mysqli=/usr/local/mysql/bin/mysql_config \

--enable-soap \

--enable-mbstring=all \

--enable-sockets

[[email protected]]#make && make install

安裝報錯,如:/usr/local/src/php-5.4.0/ext/gd/gd_ctx.c:153:錯誤:‘gdIOCtx’ 沒有名爲 ‘data’的成員等等

解決方案:進入gd/include目錄下找到gd_io.h這個文件,進入增加一條void (*data);

格式:

typedef struct gdIOCtx

{

 int (*getC) (struct gdIOCtx *);

 int (*getBuf) (struct gdIOCtx *, void *, int);


 void (*putC) (struct gdIOCtx *, int);

 int (*putBuf) (struct gdIOCtx *, const void *, int);



 int (*seek) (struct gdIOCtx *, const int);


 long (*tell) (struct gdIOCtx *);


 void (*gd_free) (struct gdIOCtx *);

 void (*data);

}

gdIOCtx;

再次make && make install就沒問題了


進入php/etc下發現沒有php.ini文件,從php-5.4.0目錄下拷貝即可

cp /usr/local/src/php-5.4.0/php.ini-development /usr/local/php/etc/php.ini


LAMP安裝完成,網址欄輸入http://IP

看到php頁面說明安裝成功,否則百度吧


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章