没有办法用 rpm查询一个源代码包是否安装 因为 并不是用rpm安装的
可以先吧 selinux 给禁用掉  iptables -F 把防火墙规则全部删除
首先确保 gcc  gcc-c++   make是否安装
一般 make是安装了的  但是 gcc 和gcc-c++是没安装
首先先载入CentOS的光盘 然后进入 CentOS目录
rpm -ivh gcc-4.1.2-48.el5.i386.rpm   安装GCC  但是会有依赖关系  无法安装


我们可以用 yum  install gcc
然后安装 yum install gcc-c++   


好了 基本环节我们都准备好了 

所有的代码包地址
http://pan.baidu.com/share/link?shareid=3759158395&uk=4160875019


./configure选项
--enable-shared指编译后会链接成共享对象(.so文件,或者按照windows的说法称之为动态链接库(dll)
--enable-static:生成静态链接库
--enable-shared:生成动态链接库

--prefix:指定安装路径   DEMO: --prefix=/usr/local/ibxml2/



如果不想卸载apache 可以先停止掉
serivce httpd status 停止apache

卸载apache
yum remove httpd
卸载mysql
yum remove mysql

1、解包
先把所有的tar包放在lamp 目录里面  
然后写个脚本批量解压
#! /bin/sh
# tar
ls *.tar.gz > ls.list
for tar in `cat ls.list` 
do 
        tar -zxf $tar
done





如果编译错了 要重新编辑 首先把安装目录删除掉  然后把tar解压缩好的目录也删除掉 最后 重新解压
如果是apache 先把进程给kill掉 然后删除文件

编译基本流程============================
2、配置config
./configure  配置

3.make  编译过程 

4.make install  安装 拷贝   
====================================

正式编译

先编译配置 php需要用的 libxml2-2.6.30.tar.gz  
进入目录 执行安装目录   ./configure --prefix=/usr/local/libxml2/
然后 make  编译 
然后 make install  就好了 


编译  libmcrypt-2.5.8
进入 
libmcrypt-2.5.8目录
./configure --prefix=/usr/local/libmcrypt/
make  编译    甚至 可以  make  ; make install   直接执行 2个命令    或者  make && make install  make执行成功了 就install
make  install  

编译  libmcrypt-2.5.8/libltdl
cd /lamp/libmcrypt-2.5.8/libltdl
./configure --enable-ltdl-install
make
make install


编译  zlib  不指定安装路径 不然容易出错
cd /lamp/zlib-1.2.3
./configure
make
make install 



编译 php的图片库文件  libpng
cd /lamp/libpng-1.2.31
./configure --prefix=/usr/local/libpng/
make
make install


编译 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
cd /lamp/jpeg-6b
./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static
make
make install



编译安装 freetype
cd /lamp/freetype-2.3.5
./configure --prefix=/usr/local/freetype/
make
make install


编译安装 autoconf    不指定安装目录
cd /lamp/autoconf-2.61
./configure
make 
make install


编译安装 GD库  需要用到前面库文件指定的安装路径
cd /lamp/gd-2.0.35
./configure --prefix=/usr/local/gd2/ --with-jpeg=/usr/local/jpeg6/ --with-freetype=/usr/local/freetype/
make
make install


安装apache
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
make
make install


启动apache
/usr/local/apache2/bin/apachectl start
设置apache开机自启动
echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.d/rc.sysinit



继续编译
这个是mysql的编译工具 必须先安装一下
cd /lamp/ncurses-5.6
./configure --with-shared --without-debug --without-ada --enable-overwrite
make 
make install


安装mysql  
首先添加mysql的用户和组
groupadd mysql
useradd -g mysql mysql

然后安装mysql
cd /lamp/mysql-5.0.41
指定安装目录 指定支持所有字符集
./configure --prefix=/usr/local/mysql/ --with-extra-charsets=all
make
make install


生成一下mysql的配置文件
cp support-files/my-medium.cnf /etc/my.cnf

创建mysql数据库的授权表
/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自启动脚本拷贝到 自启动脚本目录
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
chkconfig --levels 245 mysqld off


安装php
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
make install



新建phpini文件
cp php.ini-dist /usr/local/php/etc/php.ini
让apache支持php
echo "Addtype application/x-httpd-php .php .phtml" >> /etc/httpd/httpd.conf
重启apache
/usr/local/apache2/bin/apachectl restart



大功告成







源代码编译lamp环境的更多相关文章

  1. centos7.0 手动编译 lamp环境

    首先新建用户 lamper,并添加 sodu权限 两种方法:is not in the sudoers file 解决(转) xx is not in the sudoers file 问题解决[转载 ...

  2. 编译安装lamp环境

    httpd 2.4.9 + mysql-5.5.33 + php-5.4.29编译安装过程: 准备好以下安装包: mysql-5.5.33-linux2.6-x86_64.tar.gz apr-uti ...

  3. CentOS6.5下搭建LAMP环境(源码编译方式)

    CentOS 6.5安装配置LAMP服务器(Apache+PHP5+MySQL) 学习PHP脚本编程语言之前,必须先搭建并熟悉开发环境,开发环境有很多种,例如LAMP ,WAMP,MAMP等.这里我介 ...

  4. CentOS下编译搭建LAMP环境

    搭建LAMP环境须知 搭建LAMP环境时,需要安装的所有软件都要按照一定的顺序安装,我们按照Apache->MySQL->PHP的顺序安装.但是在安装PHP之前,应先安装PHP5需要的最新 ...

  5. 年终福利,PHP7+Apache2.4+MySQL5.6 源码编译安装,环境配置,搭建你自己的LAMP环境

    PHP7 都出来了,你还在玩PHP5吗? MySQL5.6 早都出来了,你还在玩MySql5.2吗? Apache2.4 早都出来了,你还在玩Apache2.2吗? 笔者不才,愿意亲自搭建环境,供搭建 ...

  6. lamp环境编译(apache2.4.7 php5.4.25 mysql 5.5.23)

    环境要求 gcc.gcc-c++.cmake.bison(可能)支持 1.yum install gcc gcc-c++ cmake bison 2.修改yum配置,达到搜索本地设置 移走或改名/et ...

  7. lamp环境编译(实际通过)

    CentOS:5.5Apache:2.2.9PHP:5.2.6MySQL:5.0.41 条件: yum install gccyum install gcc-c++ vi/etc/yum.repos. ...

  8. LAMP 环境搭建之源码包编译安装

    mysql用的二进制包安装. Apache php 用的源码包 mysql版本5.5.46    Apache版本2.4.7  PHP版本:5.5 mysql安装部分参考了阿铭linux的内容. 这是 ...

  9. Lamp环境搭建Linux CentOS6.5编译安装mysql5.6

    经典web开发组合Lamp环境搭建之mysql安装详解 安装前准备 通过rpm命令检查centos上是否已经安装mysql,然后卸载已经存在的mysql版本 [root@localhost src]# ...

随机推荐

  1. 将 jsp 页面的值 传到struts2 action中(不是表单中的值)

    JSP: 页面: <%@ page language="java"  pageEncoding="GBK"%> <%@taglib prefi ...

  2. Nutch 是一个开源Java 实现的搜索引擎

    Nutch 是一个开源Java 实现的搜索引擎.它提供了我们运行自己的搜索引擎所需的全部工具.包括全文搜索和Web爬虫. Nutch的创始人是Doug Cutting,他同时也是Lucene.Hado ...

  3. 一步一步重写 CodeIgniter 框架 (11) —— 使用 CodeIgniter 函数库

    在完成了CI框架的类库扩展后,很自然我们就会想到函数库的扩展.函数库的扩展在 CI 中称为 helper 函数与类有不同的地方,它不能继承,只能覆盖或者添加新的函数,或者直接完全新定义的一组函数. 由 ...

  4. c: c代码书写规范

    排版: 较长的语句或函数过程参数(>80字符)要分成多行书写, 长表达式要在低优先级操作符处划分新行,操作符放在新行之首, 划分出的新行要进行适当的缩进,使排版整齐,语句可读 参考: 1. 运算 ...

  5. 关于Dropdownlist使用的心得体会

    2013-07-23关于Dropdownlist使用的心得体会: Dropdownlist使用最多的几个属性: 一.Dropdownlist.Items,负责包含所有选项的容器 DropDownLis ...

  6. C#反射 入门学习 02

    获取Type类型的构造函数 前言                  有了前面的 C#反射 入门学习 01的知识,学习这篇估计是搓搓有余,它教会了我们获取方法的相关信息的两种形式与 使用反射调用方法,  ...

  7. asp.net core 使用 Redis 和 Protobuf

    asp.net core 使用 Redis 和 Protobuf 前言 上篇博文介绍了怎么样在 asp.net core 中使用中间件,以及如何自定义中间件.项目中刚好也用到了Redis,所以本篇就介 ...

  8. C++静态库中使用_declspec(dllexport) 不能导出函数的问题

    在某项目中,有一些静态库,这些静态库中有类型命名的函数GET_XXX.在一次项目结构调整的时候,我想将调用这静态库的代码编译成DLL,并且将这些Get函数导出,我就直接就这些函数前面添加了_decls ...

  9. 用Python做2048游戏 网易云课堂配套实验课。通过GUI来体验编程的乐趣。

    第1节 认识wxpython 第2节 画几个形状 第3节 再做个计算器 第4节 最后实现个2048游戏 实验1-认识wxpython 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiy ...

  10. GDSOI2015 task4 ACU

    题目大意 只要你有耐心看完题目,你就可以得到以下模型: 给出一个有向图,有若干询问,每次询问对于某条边\((v,u)\),求删掉这条边后,\(v\)到\(u\)的最短路. 算法1 暴力出奇迹,期望得分 ...