################################################编译boa################################################
1. 下载:boa-0.94.13.tar.gz
2. 解压:tar -xvzf boa-0.94.13.tar.gz
3. 配置
cd boa-0.94.13/src
./configure
4. 修改Makefile为实际编译器
LDFLAGS = -g -march=armv4t
CFLAGS = -g -O2 -pipe -Wall -I. -march=armv4t
CROSS_PREFIX=arm-none-linux-gnueabi-
CC = ${CROSS_PREFIX}gcc
CPP = ${CROSS_PREFIX}gcc -E
5. 编译make,如果有如下错误
5.1 util.c: In function 'get_commonlog_time':
util.c:100:1: error: pasting "t" and "->" does not give a valid preprocessing token
解决:util.c line 100
if (use_localtime) {
t = localtime(¤t_time);
time_offset = TIMEZONE_OFFSET(t);
} else {
t = gmtime(¤t_time);
time_offset = 0;
}
修改为:
if (use_localtime) {
t = localtime(¤t_time);
time_offset = 0
} else {
t = gmtime(¤t_time);
time_offset = 0;
}
5.2
在redhat 9.0上当把boa启动用户改为其它用户,如root时经常报错,Boa.c 225-227行下, 执行到DIE那句报错,
if (setuid(0) != -1) {
DIE("icky Linux kernel bug!");
} 注释掉这3行代码
6. 压缩boa
-rwxr-xr-x 1 root root 224533 2011-05-24 10:01 boa*
arm-none-linux-gnueabi-strip boa
-rwxr-xr-x 1 root root 62712 2011-05-24 10:02 boa*
-rwxr-xr-x 1 root root 22197 2011-05-24 10:01 boa_indexer*
arm-none-linux-gnueabi-strip boa_indexer
-rwxr-xr-x 1 root root 8376 2011-05-24 10:04 boa_indexer*
复制boa,boa_indexer到boa-0.94.13-arm目录下
7. 默认boa.conf放在/etc/boa/目录下
boa-0.94.13/boa.conf有一个例子,在基础上进行修改
################################################编译boa################################################
################################################编译php################################################
1. 下载:php-5.2.17.tar.gz
2. 解压:tar -xvzf php-5.2.17.tar.gz
3. 配置
cd php-5.2.17
vi b.sh
./configure /
--prefix=/opt/m2m-boa-php/php-5.2.17-arm /
--with-config-file-path=/etc/php /
--disable-all /
--enable-session /
--enable-spl /
--enable-cgi
chmod u+x b.sh
4. 修改Makefile为实际编译器
CROSS_PREFIX=arm-none-linux-gnueabi-
CC = ${CROSS_PREFIX}gcc
CFLAGS = $(CFLAGS_CLEAN) -prefer-non-pic -static -march=armv4t
CFLAGS_CLEAN = -g -O2 -march=armv4t
CPP = ${CROSS_PREFIX}gcc -E
5. 编译
make
make install
6. 压缩php
cd php-5.2.17-arm/bin/
-rwxr-xr-x 1 root root 7905442 2011-05-24 10:34 php*
-rwxr-xr-x 1 root root 7895286 2011-05-24 10:34 php-cgi*
arm-none-linux-gnueabi-strip php
arm-none-linux-gnueabi-strip php-cgi
-rwxr-xr-x 1 root root 2292940 2011-05-24 10:36 php*
-rwxr-xr-x 1 root root 2293304 2011-05-24 10:36 php-cgi*
7. php.ini放在/etc/php/目录下
php-5.2.17有一个例子, php.ini-recommended,
复制一份到/etc/php/目录下并重命名为php.ini
################################################编译php################################################
################################################安装###################################################
tar -czvf boa-0.94.13-arm.tar.gz boa-0.94.13-arm
tar -czvf php-5.2.17-arm.tar.gz php-5.2.17-arm
root@ATOS boa-php]pwd
/usr/local/arm/boa-php
[root@ATOS boa-php]ls
boa-0.94.13-arm.tar.gz php-5.2.17-arm.tar.gz
[root@ATOS boa-php]tar -xzvf boa-0.94.13-arm.tar.gz
[root@ATOS boa-php]tar -xzvf php-5.2.17-arm.tar.gz
[root@ATOS boa-php]ls
boa-0.94.13-arm boa-0.94.13-arm.tar.gz php-5.2.17-arm php-5.2.17-arm.tar.gz
cd /etc/boa
ln -s /usr/local/arm/boa-php/boa-0.94.13-arm/boa.conf boa.conf
cd /etc/php.ini
ln -s /usr/local/arm/boa-php/php-5.2.17-arm/lib/php.ini php.ini
################################################安装###################################################