设为首页 收藏本站
查看: 749|回复: 0

[经验分享] lanp(linux+apache+gd库+php)的安装

[复制链接]

尚未签到

发表于 2018-11-23 09:29:27 | 显示全部楼层 |阅读模式
  ps1:在源码安装时,如果配置通过(./configure),但是make(生成makefile失败),此时可以用make clean命令清除编译的结果,从新进行编译
ps2.安装PHP常见错误解决error: libjpeg.(a|so),error:libpng.(a|so) not found,error: Cannot find ldap
我都安装了的,为什么就找不到呢?找不到其实就应试想到它的搜索位置里面是没有的,要不然才不会说not found
  [root@GFS_Server php-5.2.13]# rpm -qa | grepjpeg
libjpeg-6b-33
libjpeg-6b-33

  32位和64位的都装了。你可以强制删除两个包,再重装64位的包。rpm --allmatches --nodeps这种方法真是损系统又损你.有时候强制执行的东西也会随便把lib中的一些包给强制删了..所以我认为不建议这么做,重复就让它重复吧,没关系的!
  [root@GFS_Serverphp-5.2.13]#locate libjpeg.so
[root@GFS_Server php-5.2.13]# locate libjpeg.a
如果是源码安装的,你肯定要添加--with-jpeg-dir=/usr/local/jpeg6,那么在./configure时,会去这个目录下的lib/下寻找libjpeg.so/libjpeg.a文件。此时肯定这个目录下没有这文件!!!
  另外:(a|so)这些结尾的都是相应包的库文件
  如果没有指定jpeg的目录,./configure会自动的去/usr/lib下寻找,这些库文件。但是实际上在安装的时候(rpm),系统会默认的将这些库文件放在/usr/lib64下(64位的系统--32位的系统不会出现这个问题)
  解决:cp -frp /usr/lib64/libpng*   /usr/lib/
  

  

  

  ==================================LADP安装=====================
总共11个源码包
autoconf-2.61.tar.gz
httpd-2.2.8.tar.gz
libxml2-2.6.19.tar.gz
mysql-5.0....
freetype-2.1.10.tar.gz
jpegsrc.v6b.tar.gz
libpng-1.2.24.tar.gz
zlib-1.2.3.tar.gz
gd-2.0.35.tar.gz
php-5.2.5.tar.gz


检查环境是否安装gcc
# gcc -v

安装GD库==============================
安装前应先依次安装zlib/libpng/freetype/jpegsrc.v6b/autoconf/gd

===============================================================================
安装zlib
tar xzvf zlib-1.2.3.tar.gz
cd zlib-1.2.3
./configure --prefix=/usr/local/zlib
make
make install

ps:64位的linux系统用./configure生成的makefile编译,虽然不会出错,但是在之后安装php是肯定会报错(/usr/bin/ld:/usr/local/lib/libbz2.a: relocation R_X86_64_32 against `a local symbol' cannot be used when making a shared object; recompile with -fPIC)------------解决方案:vi Makefile
CFLAGS上加入 -fPIC
CFLAGS = -fPIC  xxxxxxxxxxxxxxxxxx
make && make install && makeclean

此时问题解决
===============================================================================
安装libpng
tar xzvf libpng-1.2.24.tar.gz
cd libpng-1.2.24
cp scripts/makefile.linux makefile
make
make install

==========================================================================
安装freetype TTF包
tar xzvf freetype-2.1.10.tar.gz
cd freetype-2.1.10
./configure --prefix=/usr/local/freetype
make
make install

=========================================================================
安装jpeg6
tar xzvf jpegsrc.v6b.tar.gz
cd jpeg-6b
mkdir -p /usr/local/jpeg6
mkdir -p /usr/local/jpeg6/bin
mkdir -p /usr/local/jpeg6/lib
mkdir -p /usr/local/jpeg6/include
mkdir -p /usr/local/jpeg6/man
mkdir -p /usr/local/jpeg6/jpeg6man1
mkdir -p /usr/local/jpeg6/man/man1
./configure --prefix=/usr/local/jpeg6--enable-share --enable-static
make
make install
最后安装jpeg6库文件
make install-lib
使用libtool完成库的安装
libtool --finish /usr/local/jpeg6//lib /



注:在源码安装jpeg6时报错:make: ./libtool: Command not found
make: *** [jcapimin.lo] Error 127
错误分析:由于libtool版本过低导致的,重新下载新版本的libtool以默认方式安装,(一般都是64位的系统上面报错)1x64bit的服务器就是报这个错误,可以直接执行:cp /usr/share/libtool/config.sub .
cp /usr/share/libtool/config.guess .
而不需另行安装(必须要从新编译)2x64bit的系统安装jpeg./configure --prefix=/usr/local/jpeg6 --enable-share --enable-static
make
make install
64位的系统就不用添加以下两个步骤了,不然在安装gd时是报错!!!
---make install-lib
---libtool --finish /usr/local/jpeg6//lib /

===============================================================================
  安装autoconf
tar xzvf autoconf-2.61.tar.gz
cd autoconf-2.61
./configure --prefix=/usr
make
make install
  ==============================================================================
  安装GD
tar xzvf gd-2.0.35.tar.gz
cd gd-2.0.35
./configure --prefix=/usr/local/gd--with-jpeg=/usr/local/jpeg6 --with-png=/usr/local/lib--with-zlib=/usr/local/zlib --with-freetype=/usr/local/freetype
make
make install
cp gd.h /usr/local/lib #
将生成的头文件拷贝到lib目录下,否则会出
  ===============================================================================
  安装freetds(用来连接MS SQLServerSybase数据库更具需要是否安装)
tar xzvf freetds-0.82.tar.gz
cd freetds-0.82
./configure --prefix=/usr/local/freetds--with-tdsver=8.0
make
make install

  ===============================================================================
  安装mysql===见另外文章==================================
  ==============================================================================安装apache
./configure--prefix=/usr/local/apache2 --enable-so --enable-ssl=static--with-ssl=/usr/local/ssl --with-z-dir=/usr/local/zlib
make
make install
设置apache 自启动
echo "/usr/local/apache2/bin/apachectlstart">>/etc/rc.d/rc.local
检查是否加入自启动了
cat /etc/rc.d/rc.local

  ps:在配置的时候报错:configure: error: ...No recognized SSL/TLS toolkit detected
  解决:安装openssl-devel
  ===============================================================================
安装PHP
PHP 对XML的支持是建立在libxml2库的基础上的

安装php之前先安装libxml2
tar -zxvf libxml2-2.6.19.tar.gz
cd libxml2-2.6.19

./configure --prefix=/usr/local/libxml2 --with-zlib=/usr/local/zlib/
make
make install

复制配置文件
cp xml2-config /usr/bin

===============================================================================
说明:
php必要的选项:
--prefix=/usr/local/php
--with-apxs2=/usr/local/apache/bin/apxs
--with-mysql=/usr/local/mysql/
--with-libxml-dir
--enable-mbstring

这是让PHP支持GD库的配置选项:
--with-gd=/usr/local/gd2/
--with-jpeg-dir=/usr/local/jpeg6/
--with-png
--with-zlib-dir=/usr/lib
--with-freetype-dir=/usr/local/freetype

===============================================================================
接着安装php
检查系统是否已经安装php,如果安装将其卸载
将多个相关软件包一次性卸载:
for i in 'rpm -qa | grep -i php'
>do rpm -e $i --nodeps
>done

tar-zxvf php-5.2.5.tar.gz
cd php-5.2.5
mkdir -p /usr/local/php5
./configure --prefix=/usr/local/php5--with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql          --with-libxml-dir=/usr/local/libxml2--with-png-dir=/usr/local/lib          --with-jpeg-dir=/usr/local/jpeg6--with-zlib-dir=/usr/local/zlib        --with-freetype-dir=/usr/local/freetype--with-gd=/usr/local/gd -    -enable-soap    --enable-mbstring=all
make
make test
make install

建立php配置文件
cp php.ini-dist /usr/local/php5/lib/php.ini
修改apache配置文件添加php支持
vi /usr/local/apache2/conf/httpd.conf
加入(注意之前加过了就不用再加,否则apache不能启动:
LoadModule php5_module modules/libphp5.so
在此下面加入以下
AddType application/x-httpd-php .php   -

  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-638496-1-1.html 上篇帖子: org.apache.jasper.JasperException 下篇帖子: Apache Benchmark ab命令对Apache进行压力测试
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表