版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、平时写程序时都是在服务器已经搭建好的PHP环境进行的。出于对未知知识的好奇,这几天在自己的机器上搭建起了PHP开发环境。本想轻松顺利的看到phpinfo显示在我的页面上,没想到安装环境时一路的error,不停的google折腾了半天终于看到了phpinfo。在此把遇到的问题总结一下,给大家提供一个参考。我的OS是ubuntu 9.10,得益于apt-get强大的功能参考了一下这篇文章A3.85LAMP,轻松的完成了LAMP的搭建。后来手痒痒的不行,把环境全删了重新用源码包搭建了一遍。步骤如下:(由于用非root账户登录,在需要root权限时用sudo执行一、build-essential的安装
2、# bulid-essential是编译源码包(C/C+程序所需的编译工具# ubuntu 下默认没有安装,ubuntu下可以执行sudo apt-get install build-essential安装包 build-essential_11.4.tar.gz# 安装命令tar -zxvf build-essential_11.4.tar.gzcd build-essential-11.4./configuremakesudo make installmake clean二、MySql的安装step.1ncurses的安装# 如果缺少ncurses包mysql编译会报No curses/t
3、ermcap library found的错误安装包 ncurses-5.6.tar.gztar -zxvf ncurses-5.6.tar.gzcd ncurses-5.6./configure -prefix=/usr/local/ncurses -with-shared -without-debug -enable-widecmakesudo make installmake cleanstep.2mysql的安装安装包mysql-5.1.42.tar.gzstep.a# 安装命令tar -zxvf mysql-5.1.42.tar.gzcd mysql-5.1.42./configur
4、e-prefix=/usr/local/mysql-with-named-curses-libs=/usr/local/ncurses/lib/lib ncursesw.so.5.6-with-charset=gbk# -prefix=/usr/local/mysql mysql的安装路径# 关于mysql配置文件路径的说明:mysql按照下列顺序搜索f# /etc,mysql安装目录如/usr/local/mysql/etc,安装目录下的data目录如/usr/local/mysql/data,以最先找到的为准。/etc下f的配置是全局设置# -with-named-curses-libs=
5、/usr/local/ncurses/lib/libncursesw.so.5.6 ncurses 库文件安装路径# -localstatedir=/usr/local/mysql/var 数据库默认存放路径(可以设置其它路径如, /var/lib/mysql# -with-charset=gbk 设置数据库支持中文字符集makesudo make installstep.b# 拷贝mysql配置文件到目标目录/usr/local/mysql/etc# 新建/usr/local/mysql/etc目录(该目录没有自动创建sudo mkdir/usr/local/mysql/etcsudo cp
6、 support-files/my-f /usr/local/mysql/etc/f# 删除安装产生的临时文件(一定要在拷贝完配置文件后在执行,不然my-f会被删除make cleanstep.c# 添加一个名为mysql的linux系统群组(可以参考mysql手册2.8.1. 源码安装概述sudo groupadd mysql# 新建一个名为mysql的linux系统用户,并将其添加到mysql系统群组中# 如果Linux只启动命令行界面,可以用下面的操作添加需要的账户# sudo useradd -M -s /bin/false -g mysql mysql# -M 该选项不会建立用户目录
7、# -s 指定新建用户使用的shell,/bin/false表示该用户不能登录系统# -g mysql 将用户mysql添加到组mysql中# 我现在用的时桌面系统,用如上命令添加账户。系统启动时在登录界面会显示mysql用户虽然它不登录# 改用下面命令,mysql账户就不会显示在登录界面了sudo useradd -r -s /bin/false-g mysqlmysql# -r 建立系统账户,不创建用户目录,用户分配的uid小于1000step.d# 创建mysql授权表# 如果用root运行命令,应当使用-user选项。选项的值应与你在stpe.czz中创建的登录账户相同。如果用该用户登
8、录来运行命令,可以省略-user选项#在此步如果报FATAL: Could not find mysqld错误,将命令改为#sudo /usr/local/mysql/bin/mysql_install_db -user=mysql -basedir=/usr/local/mysqlstep.e# 进入mysql的安装目录(/usr/local/mysqlcd /usr/local/mysql# 将文件的所有属性改为root用户sudo chown-R root .# 将数据目录的所有属性改为mysql用户(即在step.c中创建的用户sudo chown-R mysql var# 将组属性改
9、为mysql组sudo chgrp-R mysql.step.f# 启动mysql服务sudo /usr/local/mysql/bin/mysqld_safe -user=mysql&# 登录数据库/usr/local/mysql/bin/mysql-urootmysql安装完成了三、Apache的安装# 使用DSO动态编译,关于动态编译与静态编译的区别可以参考安装包 httpd-2.2.14.tar.gztar -zvxf httpd-2.2.14.tar.gzcd httpd-2.2.14./configure -prefix=/usr/local/apache -enable-
10、mods-shared=most -enable-so # -prefix=/usr/local/apache 将apache安装到/usr/local/apache路径# -enable-mods-shared=most 将所有标准模块都动态编译为DSO模块# -enable-so apache核心装载DSO,但是不实际编译任何动态模块makemake installmake clean# 启动apachesudo /usr/local/apache/bin/apachectl start# 打开浏览器输入浏览器会看到It works!apache安装完成了四、PHP的安装step.1fre
11、etype的安装安装包 freetype-2.3.11.tar.gz# 安装命令tar -zxvf freetype-2.3.11.tar.gzcd freetype-2.3.11./configure -prefix=/usr/local/freetypemakesudo make installmake cleanstep.2zlib的安装安装包 zlib-1.2.3.tar.gz# 安装命令tar -zxvf zlib-1.2.3.tar.gzcd zlib-1.2.3./configure -prefix=/usr/local/zlib -shared#-prefix=/usr/loc
12、al/zlib zlib的安装目录 -shared安装共享库makesudo make installmake cleanstep.3libpng的安装安装包 libpng-1.4.0.tar.gz# 安装命令tar -zxvf libpng-1.4.0.tar.gzcd libpng-1.4.0# 将scripts目录下的makefile.std文件拷贝到当前目录,并重命名为makefile cp scripts/makefile.std makefile# 编辑makefile文件找到27行左右如下内容# ZLIBLIB=./zlib# ZLIBINC=./zlib# 修改为# ZLIBL
13、IB=/usr/local/zlib/lib (zlib的库文件路径# ZLIBINC=/usr/local/zlib/include (zlib的包含文件路径# 保存退出# 如果安装zlib时配置命令为 ./configure ,则不用修改makefile文件makesudo make installmake cleanstep.4jpeg的安装安装包 jpegsrc.v7.tar.gz# 安装命令tar -zxvf jpegsrc.v7.tar.gzcd jpeg-7./configure -prefix=/usr/local/jpeg7makesudo make installmake
14、clean# 很多人手动建立 jpeg的目录结构不知道是因为不同还是有其它原因(有待查证# 以上包都是gd库所需要的组成库,下面安装gd库step.5gd 库的安装 安装包 gd-2.0.35.tar.gz # 安装命令 step.a tar -zxvf gd-2.0.35.tar.gz cd gd-2.0.35 # 执行 gd 配置命令 LDFLAGS="-L/usr/local/lamp/contrib/lib" -with-freetype=/usr/local/freetype -with-jpeg=/usr/local/jpeg7 # LDFLAGS="
15、-L/usr/local/zlib/lib" zlib 的库文件路径 # 如 果 安 装 zlib 时 配 置 命 令 为 ./configure , 则 将 gd2 库 的 配 置 命 令 改 为 ./configure -prefix=/usr/local/gd2 -with-freetype=/usr/local/freetype ./configure -prefix=/usr/local/gd2 -with-png=/usr/local/libpng -with-png=/usr/local/libpng -with-jpeg=/usr/local/jpeg7 step.b
16、 # 编辑 Makefile 文件, 找到 232 行左右 # 看 到 类 似 内 容 CPPFLAGS = -I/usr/local/freetype/include/freetype2 -I/usr/local/freetype/include -I/usr/local/freetype/include -I/usr/local/jpeg7/include # 修 改 为 CPPFLAGS = -I/usr/local/freetype/include/freetype2 -I/usr/local/freetype/include -I/usr/local/freetype/include
17、 -I/usr/local/jpeg7/include -I/usr/local/libpng/include # 保存退出 step.c # 编辑 gd_png.c 文件 找到 if (!png_check_sig (sig, 8 /* bad signature */ # 修改为 if (png_sig_cmp (sig, 0, 8 # 保存退出 step.d # 执行命令 make sudo make install make clean # gd 库安装完成 step.6 libxml2的安装 安装包 libxml2-2.6.20.tar.gz # libxml2用来解析 xml #
18、安装命令 tar -zxvf libxml2-2.6.20.tar.gz cd libxml2-2.6.20 ./configure -prefix=/usr/local/libxml # 编辑 nanohttp.c 文件,找到 fd = open(filename, O_CREAT | O_WRONLY;(可以通过查找 O_WRONLY 定位 # 修改为 fd = open(filename, O_CREAT | O_WRONLY,0777; # 保存退出 make make install make clean step.7 php 的安装 安装包 php-5.3.1.tar.gz # 安
19、装命令 step.a tar -zxvf php-5.3.1.tar.gz cd php-5.3.1.tar ./configure -prefix=/usr/local/php -with-apxs2=/usr/local/apache/bin/apxs -with-mysql=/usr/local/mysql-with-libxml-dir=/usr/local/libxml2 -with-zlib-dir=/usr/local/zlib -with-jpeg-dir=/usr/local/jpeg7 -with-gd=/usr/local/gd2 # -with-zlib-dir=/usr/local/zlib 的 安 装 目 录 , 如 果 安 装 zlib 的 配 置 命 令 -with-png-dir=/usr/local/libpng -with-freetyp-e-dir=/usr/local/freetype 为 ./configure ,则安装目录为
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年南昌工学院单招职业技能测试题库带答案详解(典型题)
- 2026年克拉玛依职业技术学院单招职业技能考试题库带答案详解(考试直接用)
- 2026年南充电影工业职业学院单招职业倾向性考试题库及答案详解参考
- 2026年南充科技职业学院单招职业适应性考试题库含答案详解(满分必刷)
- 2026年兰州资源环境职业技术大学单招职业技能测试题库附答案详解(研优卷)
- 2026年内蒙古电子信息职业技术学院单招综合素质考试题库附答案详解(满分必刷)
- 2026年内蒙古丰州职业学院单招职业适应性测试题库及完整答案详解
- 2026年北京北大方正软件职业技术学院单招职业技能测试题库含答案详解(培优)
- 2026年南昌健康职业技术学院单招职业倾向性测试题库带答案详解(达标题)
- 2026届山东省济南市部分学校高三第三次(4月)统一检测试题英语试题试卷含解析
- 湖北省2026届高三上学期元月调考第二次联考物理试卷(含解析)
- 灾害响应中的物资调度协同机制
- 消火栓安全培训知识课件
- DRG支付改革对医院运营的影响及应对
- 2026年湖南环境生物职业技术学院单招职业倾向性测试题库必考题
- 熔盐储热材料研发-洞察与解读
- 人教版7到9年级单词表打印版
- 2025年高压电工复审完整题库(附答案)
- 供热管网系统运行工国家职业标准(征求意见稿)
- 基因组学与基因表达数据分析-洞察阐释
- 2025年湖北高考真题化学试题(原卷版)
评论
0/150
提交评论