Linux学习笔记_13_2_LAMP环境编译(下)--编译过程及分析


LAMP环境编译(下)

--编译过程及分析


 

库文件安装

一、安装libxml2
 
[plain] view plaincopy在CODE上查看代码片派生到我的代码片
cd /lamp/libxml2-2.6.30
./configure --prefix=/usr/local/libxml2/
#“/”表示是一个目录,--prefix指定安装路径,prefix 前缀,加前缀
#如果不指定安装目录,系统默认会将不同类型的文件打散放到不同的目录下
#一般都在/usr/local目录下
#配置过程中,要重点关注有没有错误信息,如:error。尤其是最后的提示信息,一定要重点关注
make
make install

说明:

1、configure的其他选项

configure --help #查看帮助信息

configure --help | grep zlib #查看有关与zlib的帮助信息

2、检测源码包软件是否安装成功的方法

软件安装完成之后,有必要到相应的软件安装目录下确认软件是否安装成功,如果是Apache,MySQL,我们还可以在其安装目录下找到其启动程序,检测是否能够正常使用,一定不要用rpm去检测其是否安装,以及不要用service命令去启用这个程序!

3、如果安装过程出错

首先一般要把安装目录删除:rm -rf /usr/local/libxml2/ #其实就相当于软件卸载了,没有残留信息,如果是服务程序,则需要先将该服务关闭

把源代码目录删除:rm -rf /lamp/libxml2-2.6.30

二、安装 libmcrypt

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
cd /lamp/libmcrypt-2.5.8
./configure --prefix=/usr/local/libmcrypt/
make
make install #make & make install

说明:可以将所有的命令编写成一个shell脚本,然后每次安装的时候,只要执行这个脚本就可以了

三、安装 libltdl

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
cd /lamp/libmcrypt-2.5.8/libltdl #其就保存在上一个目录下
./configure --enable-ltdl-install #指定ltdl的安装选项
make
make install

四、安装zlib

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
cd /lamp/zlib-1.2.3
./configure #可以不指定zlib的安装路径,因为后续的安装经常会调用zlib工具,如果到时不加入相关选项,会提示找不到该工具,这样最好还是选择默认的安装路径
make
make install
#make install > /backup/zlib.log 将zlib的安装日志保存,方便以后卸载升级该工具
[plain] view plaincopy在CODE上查看代码片派生到我的代码片
cd /lamp/libpng-1.2.31
./configure --prefix=/usr/local/libpng/
make
make install

六、安装jpeg6

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
#需手动创建一些目录,因为jpeg6在安装时不会自动创建这些目录
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 #-p选项:在创建新目录的同时,在其下面创建子目录
cd /lamp/jpeg-6b
./configure --prefix=/usr/local/jpeg6/ --enable-shared –enable-static
make
make install

七、安装freetype

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
cd /lamp/freetype-2.3.5
./configure --prefix=/usr/local/freetype/
make
make install

八、安装 autoconf

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
cd /lamp/autoconf-2.61
./configure
make
make install

九、安装gd库

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
cd /lamp/gd-2.0.35
./configure --prefix=/usr/local/gd2/ --with-jpeg=/usr/local/jpeg6/ --with-freetype=/usr/local/freetype/
#--wite-... 指定所用到的库的路径
make
make install
[plain] view plaincopy在CODE上查看代码片派生到我的代码片
cd /lamp/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
#--sysconfdir 指定Apache的配置文件保存位置
make
make install


/usr/local/apache2/bin/apachectl start #启动Apache
echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.d/rc.sysinit #设置Apache开机自启动
chcon -t texrel_shlib_t filename #开启SELinux的filename模块的权限,如果系统提示没有权限加载该模块时使用

十一、安装ncurses工具

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
cd /lamp/ncurses-5.6
./configure --with-shared --without-debug --without-ada --enable-overwrite
make
make install

十二、安装MySQL

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
groupadd mysql
useradd -g mysql mysql
cd /lamp/mysql-5.0.41
./configure --prefix=/usr/local/mysql/ --with-extra-charsets=all
#--with-extra-charsets=all 表示支持所有字符集
make
make install

#配置MySQL
cp support-files/my-medium.cnf /etc/my.cnf #生成MySQL的配置文件my.cnf
/usr/local/mysql/bin/mysql_install_db –user=mysql #创建mysql用户授权表
chown -R root /usr/local/mysql
chown -R mysql /usr/local/mysql/var
chgrp -R mysql /usr/local/mysql

#启动MySQL
/usr/local/mysql/bin/mysqld_safe --user=mysql &

#登录MySQL,给用户设置密码
SET PASSWORD FOR 'root'@'localhost'=PASSWORD('123456');

#设置MySQL开机自启动
cp /lamp/mysql-5.0.41/support-files/mysql.server /etc/rc.d/init.d/mysqld
chown root.root /etc/rc.d/init.d/mysqld #同时改变文件的所有者与所属组
chmod 755 /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
chkconfig --list mysqld #检测MySQL在各个运行级别的启动状态
chkconfig --levels 245 mysqld off #在245运行级别关闭MySQL的自启动

 

十三、安装PHP

 

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
cd/lamp/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-mysql=/usr/local/mysql/ --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/--with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap--enable-mbstring=all --enable-sockets
make
makeinstall
#--with-config-file-path #指定配置文件保存位置
#--with-apxs2 #指定Apache所在路径
#--with-mysql #指定MySQL所在目录
#--with-libxml-dir #指定libxml所在目录
#--with-jpeg-dir #指定jpeg库保存位置

#--with-mysqli #指定mysqli的设置
#--enable-soap #激活soap的支持
#--enable-mbstring=all#激活多字节的支持
#--enable-sockets#激活sockets通信特性的支持


#生成PHP的配置文件
cpphp.ini-dist /usr/local/php/etc/php.ini
#设置Apache可以解析PHP文件
echo"Addtype application/x-httpd-php .php .phtml" >>/etc/httpd/httpd.conf
/usr/local/apache2/bin/apachectlrestart

#编写PHP测试脚本:vi /usr/local/apache2/htdos/info.php

[php] view plaincopy在CODE上查看代码片派生到我的代码片
<?
phpinfo();
?>
[plain] view plaincopy在CODE上查看代码片派生到我的代码片
cd /lamp/ZendOptimizer-......
./install.sh
选择php.ini的保存路径为/usr/local/php/etc
[plain] view plaincopy在CODE上查看代码片派生到我的代码片
cp -a /lamp/phpMyAdmin-.... /usr/local/apache2/htdocs/phpmyadmin
cp config.sample.inc.php config.inc.php #生成phpMyAdmin的配置文件
编辑该配置文件:将包含有auth_type的一行,最后''中的内容改为'http'
 

相关内容