想建个cacti但又不想用rpm来安装一系列的软件,因此折腾编译安装。
本机是archlinux,ssh到另一台centos的电脑上装
从官网下载源码
httpd-2.2.19.tar.gz
php-5.3.8.tar.bz2
MySQL-client-5.5.15-1.rhel5.i386.rpm
MySQL-server-5.5.15-1.rhel5.i386.rpm
MySQL-devel-5.5.15-1.rhel5.i386.rpm
net-snmp-5.7.tar.gz
源码放在~/downloads目录下,工作目录在~/sources
先是httpd
cd sources
tar -xvf ../downloads/httpd-2.2.19.tar.gz
./configure --prefix=/opt/httpd --enable-mods-shared=all #因为对编译选项不熟悉,因此把全部模块都编译成动态
make
sudo make install
编辑 /opt/httpd/conf/httpd.conf
有些地方要修改
文件末加上一行
AddHandler application/x-httpd-php .php #看到有个文章写要加上,后来发现没出现问题
默认的USER和GROUP是daemon,改成httpd
然后添加账户与组httpd
sudo useradd -M -s /sbin/nologin httpd
sudo groupadd httpd #这里系统报错httpd组已存在,没关系,可能是以前装的apache.
sudo /opt/httpd/bin/apachectl -k start 测试,能打开主机上的网页说明编译成功。
原本第二个编译的是php,但到最后configure几次都不通过,然后只用--prefix=/opt/php可以通过,但make && make install
后往/opt/httpd/htdoc/index.php不能显示 phpinfo(),搜索很多资料,最后按照php官网上的文档,发现要先装mysql,configure选项最少要加上--with- apxs2=/opt/httpd/bin/apxs --with-mysql 两个选项
于是先装mysql
原本打算源码编译的,但是官网上已经有对redhat的rpm包,加上最新的mysql不能用configure,要用cmake,不熟悉于是就懒一点安装二进制包
sudo rpm -ivh MySQL-client-5.5.15-1.rhel5.i386.rpm
sudo rpm -ivh MySQL-server-5.5.15-1.rhel5.i386.rpm
sudo rpm -ivh MySQL-devel-5.5.15-1.rhel5.i386.rpm
一开始安装好client和server后以为安装好了,但后面发现php的configure不通过或make test报错说缺少mysql的头文件
装上devel后OK
安装php
tar -xvf ../downloads/php-5.3.8.tar.gz
./configure --prefix=/opt/php --with-apxs2=/opt/httpd/bin/apxs --with-mysql
make
sudo make install