LAMP環(huán)境搭建
LAMP環(huán)境搭建
網(wǎng)上有關(guān)LAMP環(huán)境搭建的文章不少,但感覺(jué)太亂,不知道該照著哪個(gè)做,索性自己寫(xiě)一下。
安裝過(guò)程中出現(xiàn)的問(wèn)題 :
1、使用源碼編譯的方法安裝MySQL時(shí)報(bào)錯(cuò):
當(dāng)設(shè)置完./configure后,提示
- checking for termcap functions library... configure: error: No curses/termcap library found

后退出。
LAMP環(huán)境搭建 解決辦法:
網(wǎng)上大多數(shù)人都是認(rèn)為缺少ncurses,于是剛開(kāi)始我先裝的是ncurses。
ncurses-devel.***.rpm 包解決
或者去下載一個(gè)ncurses-5.6.tar.gz,
- cd ncurses-5.6
- ./configure –prefix=/usr/local/ncurses –with-shared –without-debug
- make
- make install clean
然后再重新編譯Mysql進(jìn)行安裝。
但是在MySQL中configure時(shí)還是提示如上錯(cuò)誤,網(wǎng)上還提出了一種原因:缺少ncurses-devel,于是又從centos(我安裝的是centos5.5)安裝文件中找到ncurses-devel的rpm文件,
- rpm -ivh ncurses-devel-5.5-24.20060715.i386.rpm
裝完后,在MySQL下進(jìn)行configure設(shè)置正常,問(wèn)題解決。
2、編譯gd-2.0.35.tar.gz時(shí)報(bào)錯(cuò):
gcc -DHAVE_CONFIG_H -I. -I. -I. -I/usr/local/freetype/include/freetype2 -I/usr/local/freetype/include -I/usr/local/freetype/include -I/usr/local/jpeg/include -g -O2 -MT gd_png.lo -MD -MP -MF .deps/gd_png.Tpo -c gd_png.c -fPIC -DPIC -o .libs/gd_png.o
gd_png.c:16:53: error: png.h: No such file or directory
gd_png.c:47: error: expected specifier-qualifier-list before 'jmp_buf'
gd_png.c:54: error: expected ')' before 'png_ptr'
gd_png.c:82: error: expected ')' before 'png_ptr'
gd_png.c:92: error: expected ')' before 'png_ptr'
解決辦法:
vi gd_png.c
將
- #include "png.h" /* includes zlib.h and setjmp.h */
替換成:
- #include "/usr/local/libpng/include/png.h" /* includes zlib.h and setjmp.h */
然后再make就可以了
3、configure libpng時(shí)出錯(cuò):
- checking for zlibVersion in -lz... no
- configure: error: zlib not installed
提示沒(méi)有安裝zlib,但其實(shí)我在安裝libpng之前安裝就是zlib。
網(wǎng)上說(shuō)有一種解決辦法是回到zlib目錄執(zhí)行make clean后重新配置安裝,但失敗。
還有一種是,回到zlib目錄執(zhí)行make clean命令,然后依次執(zhí)行./configure、make、make install,其中configure時(shí)不要設(shè)置--prefix的值。然后回來(lái)配置libpng,成功(沒(méi)有刪除前一次在配置zlib時(shí)創(chuàng)建的目錄/usr/local/zlib,不知道以后會(huì)不會(huì)產(chǎn)生影響)。解決。
4、安裝php時(shí),make test后出現(xiàn)問(wèn)題:

解決方案:
安裝
- libtool-ltdl
- libtool-ltdl-devel
rpm包后解決
詳細(xì)安裝 :
1、配置PHP完美開(kāi)發(fā)環(huán)境所需軟件清單(總共13個(gè)):
autoconf-2.61.tar.gz
freetype-2.3.5.tar.gz
gd-2.0.35.tar.gz
httpd-2.2.17.tar.gz
jpegsrc.v6b.tar.gz
libmcrypt-2.5.8.tar.gz
libpng-1.2.31.tar.gz
libxml2-2.6.30.tar.gz
mysql-5.0.45.tar.gz
php-5.3.3.tar.gz
phpMyAdmin-3.3.8.1-all-languages.tar.gz
ZendOptimizer-3.3.0a-linux-glibc21-i386.tar.gz
zlib-1.2.3.tar.gz
準(zhǔn)備工作:
將上述軟件放到/usr/local/src下,使用 tar zxvf *.tar.gz命令解壓。
安裝gcc,如果在centOS下,可以使用yum install gcc gcc-c++命令在線(xiàn)安裝,如果是RedHat,而且像我一樣沒(méi)有系統(tǒng)的注冊(cè)碼,這能手工安裝了。
2、安裝順序
按照Apache-->MySQL-->PHP的順序安裝
在安裝 PHP 之前,應(yīng)先安裝 PHP5 需要的最新版本庫(kù)文件,比如 libxml2 、 libmcrypt 以及 GD2 庫(kù)等文件。安裝 GD2 庫(kù)是為了讓 PHP5 支持 GIF 、 PNG 和 JPEG 圖片格式,所以在安裝 GD2 庫(kù)之前還要先安裝最新的 zlib 、 libpng 、 freetype 和 jpegsrc 等庫(kù)文件。而且中間還會(huì)穿插安裝一些軟件。
a.編譯安裝libxml2
- ./configure --prefix=/usr/local/libxml2
- make && make install
如果安裝成功,會(huì)在 /usr/local/libxml2/ 目錄下存在 bin 、 include 、 lib 、 man 和 share 五個(gè)目錄。在安裝 PHP5 配置時(shí), configure 命令的選項(xiàng)要加上“ --with-libxml-dir=/usr/local/libxml2 “選項(xiàng),指定 libxml2 庫(kù)文件的位置。
b.安裝libmcrypt
- ./configure --prefix=/usr/local/libmcrypt
- make && make install
安裝成功會(huì)在 /usr/local/libmcrypt/ 目錄下存在 bin 、 include 、 lib 、 man 和 share 五個(gè)目錄。在安裝 PHP5 配置時(shí), configure 命令的選項(xiàng)要加上“ --with-mcrypt-dir=/usr/local/libmcrypt “選項(xiàng),指定 libmcrypt 庫(kù)文件的位置。
安裝完成 libmcrypt 庫(kù)以后,有一些 Linux 系統(tǒng)版本還要安裝一下 libltdl 庫(kù)??梢赃M(jìn)入到解壓縮的目錄 /usr/local/src/ libmcrypt-2.5.8 下,找到 libltdl 庫(kù)源代碼文件所在的目錄 libltdl ,進(jìn)入這個(gè)目錄按照下面幾個(gè)命令配置、編譯、安裝。
- ./configure --enable-ltdl-install
- make && make install
c.安裝zlib庫(kù)
- ./configure --prefix=/usr/local/zlib
- make && make install
安裝成功會(huì)在 /usr/local/zlib 目錄下存在 include 、 lib 和 share 三個(gè)目錄。在安裝 PHP5 配置時(shí), configure 命令的選項(xiàng)要加上“ --with-zlib-dir=/usr/local/libmcrypt “選項(xiàng),指定 zlib 庫(kù)文件的位置。
d.安裝libpng
- ./configure --prefix=/usr/local/libpng
出現(xiàn)錯(cuò)誤:
checking for zlibVersion in -lz... no
configure: error: zlib not installed
(錯(cuò)誤3)
make && make install
如果安裝成功會(huì)在/usr/local/libpng目錄下存在bin、include、lib和share四個(gè)目錄。在安裝GD2庫(kù)配置時(shí),configure命令的選項(xiàng)要加上“--with-png=/usr/local/libpng“選項(xiàng),指定libpng庫(kù)文件的位置。
e.安裝jpeg6
安裝GD2庫(kù)使用的jpeg6庫(kù)文件,需要自己手動(dòng)的創(chuàng)建安裝需要的目錄,它們?cè)诎惭b時(shí)不能自動(dòng)創(chuàng)建。
- 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
在安裝GD2庫(kù)配置時(shí),configure命令的選項(xiàng)要加上“--with-jpeg=/usr/local/jpeg6/“選項(xiàng),指定jpeg6庫(kù)文件的位置。
f.安裝freetype
- ./configure --prefix=/usr/local/freetype
- make && make install
如果安裝成功會(huì)在/usr/local/freetype目錄下存在bin、include、lib和share四個(gè)目錄。在安裝GD2庫(kù)配置時(shí),configure命令的選項(xiàng)要加上“--with-freetype=/usr/local/freetype/“選項(xiàng),指定freetype庫(kù)文件的位置。
g.安裝autoconf
- ./configure
- make && make install
h.安裝gd2
./configure --prefix=/usr/local/gd2 \
--with-zlib=/usr/local/zlib/ \
--with-jpeg=/usr/local/jpeg6/ \
--with-png=/usr/local/libpng/ \
--with-freetype=/usr/local/freetype/
(出現(xiàn)錯(cuò)誤2)
make && make install
如果安裝成功會(huì)在 /usr/local/gd2 目錄下存在 bin 、 include 和 lib 三個(gè)目錄。在安裝 PHP5 時(shí), configure 命令的選項(xiàng)要加上“ --with-gd=/usr/local/gd2/ “選項(xiàng),指定 GD 庫(kù)文件的位置。
【編輯推薦】