前几天,朋友对PHP感兴趣,他有一台SUN E3500,(哇塞,机器爽死了。。。1G内存 双 Sparc CPU)要我帮忙装一个,我满口答应下来,凭借7,8年前在学校里面用Xenix,VAX的经验,我想过去这么多年了,UNIX不会还在原地不动吧。况且,这两年来Linux这么火爆,我也在家里倒腾了一个在玩。我想这还不是小Case...
首先,想都没有想啪、啪、啪的打开几个IE窗口,只奔www.php.net ,www.mysql.com ,www.apache.org 去下载软件去了。一进去,就往Latest Version 跑,哈哈,果然,有好多*.*.tar.gz包,我赶快当、当、当,一下子就把apache_1.3.12.tar.gz mysql-3.23.32.tar.gz(为什么不是3.23.5等下解释),php-3.0.15.tar.gz Download 下来了~~哎呀,把我的眼睛都拖花了~~先休息休息。
好了,现在开工了~~,拨号网络-163-。。。。登陆网络。。,上去了,然后telnet ***.***.***.*** username:*** password:***
$ ls 回车,嗯,扯得一大堆东西都还在~~,先规划好目录,因为我是普通用户(朋友怕我用超级用户捣乱:),我先把源代码都cp到了$HOME/soft目录下面,计划东西装到 $HOME/apache $HOME/mysql $HOME/php3 下面。安装顺序为先安装MySQL再配置Apache编译项,再安装PHP,最后安装Apache.然后修改各种配置(这个都是先看了别人的安装文档的~~牛顿不是说过吗~~要站在巨人的肩上~~呵呵)。
首先
$tar -zxvf mysql-3.23.32.tar.gz
看着终端里面的字符在飞快的往上面串,我想手气还不错,没有想到,从这时开始,噩梦就降临了,解压缩完成了快一大半的时候。啪的跳出一排字来error ......,大意就是文件名太长。想不到,支持长文件名的鼻祖居然怕长文件名。没办法又转到www.mysql.com去看Document,原来是Sun Solaris的tar 有BUG。哼,7456。没办法,按照它的提示,又去下了一个gtar-sparc.gz,这可是GNU自己的tar软件。下回来了先:
$gzip -d gtar-sparc.gz
生成了一个文件 gtar-sparc,然后 ln -s gtar-sparc gt (为了以后少敲几个字,我笨手笨脚的:)再 chmod 755 gt现在可以开始了
$gt -zxvf mysql-3.23.32.tar.gz
哈哈,一路水到渠成,一口作气~~
$gt -zxvf php-3.0.15.tar.gz
$gt -zxvf apache_1.3.12.tar.gz
一切OK。然后开始编译了,先MySQL吧。
$./configure --prefix=$HOME/mysql
才开始了两行,就停下了。一看错误提示check gcc no; check cc no;哇,当场吐血晕倒!!!不会吧,没有装编译器,那个网管是谁呀?我要砍他!!!!说归说,做还是要做的(如果你的系统有gcc 或者 cc的话,你也别高兴得太早,呵呵,走着瞧)。又去www.gnu.org看,这个是大名鼎鼎的GCC的老家,上面说最新版是gcc-2.95.2,我不敢下,就下了一个gcc-2.8.1-sol26-sparc-opt.tar.gz一个gcc的安装包,和一个编译好的libstdc2.8.1-sol26-sparc-opt库文件还有一个make-3.76.1-sol26-sparc-local.gz,如果要用gcc的话,这几个东西是必须的。注意要是sol26版本,要到这个地方去下www.sunfreeware.com下,哈哈,那个站点可是一个好地方~~光是那个freeware就很诱人呀;-P,况且,这个地方还是SUN公司维护的呢,如果你是SUN的用户的话,那可要多去看看。当下来了以后。
$gt -zxvf gcc-2.8.1-sol26-sparc-opt.tar.gz
$gzip -d make-3.76.1-sol26-sparc-local.gz
$pkgadd -d gcc-2.8.1-sol26-sparc-opt (要Root用户运行)
$pkgadd -d make-3.76.1-sol26-sparc-local
然后把/opt/GCC281/bin加到 PATH 环境变量中间去,注意,一定要加上去,可以用 SET 看看加了没有。不然,就找不到gcc 好了,现在GCC也有了,重新来过,于是又 $./configure --prefix=$HOME/mysql 哈哈,好像通过了。接下来看着输出信息一排排的飞快的跑,心里美滋滋的。谁知道,还没高兴2分钟~~就出现了一个提示checking for restartable system calls... configure: error can not run test programs while cross compiling,哇,怎么这么命苦呀!!又去看文档,哦原来GCC-2.8.1在Sun下面工作不是很好!!!!推荐使用egcs-1.1.2我。。。。又去下吧,去了一看,没有egcs的for solaris 2.6的二进制版,完了,先下一个gcc-2.92.2-sol26-sparc-local.tar.gz看看吧,好相比egcs还要新些。下过来了后。ZZzzz,都晚上3点了,明天还要上班呢!!!先睡觉去了~
第二天
$gt -zxvf gcc-2.92.2-sol26-sparc-local.tar.gz
$pkgadd -d gcc-2.92.2-sol26-sparc-local
注意,这个版本的GCC装到了/usr/local/bin下面了。当然要把这个路径加到/opt/GCC281的前面。接下来$./configure --prefix=$HOME/mysql,结果还是在那个地方卡壳了,我快要崩溃了!!又按照文档提示的把下面一行插入到Config.cache 文件里面。
ac_cv_sys_restartable_syscalls=${ac_cv_sys_restartable_syscalls=@#no@#}
结果还是不行。哎,看来编译mysql-3.23.32是没有什么办法了,认栽了吧,去下一个Binary版来吧!!于是又上去找,终于找到了一个mysql-3.23.5-alpha版的for solaris 2.6(我好像记得是新加坡的一个MySQL Mirror 上面下的ftp://ftp.hjc.edu.sg/mysql)下过来后解包到了$HOME/mysql 目录下,然后
$cd $HOME/mysql
$scripts/mysql_install_db
$bin/mysqld &
$bin/mysqlshow
哈哈,终于看到了mysql 和 test 两个数据库了
接下来配置apache_1.3.12
$cd $HOME/soft/apache_1.3.12
$./configure --prefix=$HOME/apache
再安装 PHP3.0.15
$cd $HOME/soft/php-3.0.15
$./configure --with-apache=$HOME/soft/apache_1.3.12 --with-mysql=$HOME/mysql --with-charset=gb2312
如果你还有什么别的PHP3模块,也要先编译好了,再在这里加上去,过了好长一段是时间,通过了
$make
$make install
还算顺利~~~接下来Apache了
$cd $HOME/soft/apache_1.3.12
$./configure --prefix=$HOME/apache --activate-module=src/modules/php3/libphp3.a
注意,是libphp3.a这个文件会自动生成。另外,所有的命令行要在一行输入,如果你的telnet 终端一行限制80 的话你要用\结束在另外起义行,这个很重要!!!接下来
$make
一大堆信息过后,我满以为胜利在望,谁知道,就在节骨眼上面又卡壳了。提示httpd.h找不到!!!天哪,叫我到哪里去照这个文件呀!!!我估计是两个GCC有冲突,于是,我又在PATH环境变量里面,把/opt/GCC281提到了/usr/local/bin的前面。再
$make
哈哈,通过了。$符号出来了,赶快
$make install
OOOOOOoooooooooo,z终于看到了编译成功的消息。。。 Bingo ,同志们,革命成功了一半了。
赶快去修改配置。其中有几点要注意;
$cd $HOME/apache/conf
修改httpd.conf 文件,把下面几条修改一下,去掉注释
1、ServerName http://。。。。。。。 这个一定要去掉注释
2、Listen XXX.XXX.XXX:8888(其中xxx.xxx.xxx为域名,或者IP地址)
3、port 8888 (如果是小于1023的话,要root用户才能够启动httpd)
4、AddType application/x-httpd-php3 .php3
AddType application/x-httpd-php3-source .phps
找到这两行,把注释去掉。
好了,现在启动Apache了。
$cd $HOME/apache/bin
$apachectl start
然后转到htdocs目录下编辑一个test.php3
<?php3
phpinfo();
?>
再浏览http://XXX.XXX.XXX:8888/test.php3 就可以看到你的劳动成果了特别是有一项mySQL信息~~~哎呀,总算搞定了。
Email:tan_xin@163.net OICQ:1304743 ICQ:9637614 测试地址http://202.103.112.27:8888/bbs/index.php3
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/