交叉编译php,mysql

一:dnsmasq

svn checkout http://192.168.28.100:12000/svn/rocktrain/trunk/dnsmasq

cd dnsmasq

vi bld/get-version 修改 23 行,添加一个小版本号

echo "${vers}" | sort | head -n 1 | sed 's/^v//'-->echo "${vers}.2" | sort | head -n 1 | sed 's/^v//'

chmod a+x bld/*

make CC=arm-openwrt-linux-gcc

二:wifidog

svn checkout http://192.168.28.100:12000/svn/jiaoyun/trunk/jiaoyun-WiFiDog

cd jiaoyun-WIFIDog

sh autogen.sh

./configure --host=arm-openwrt-linux

vi config.h 将#define VERSION "1.2.1"修改为#define VERSION "1.2.1.473" 473和svn 上面一样

make

编译出来的wdctl和wifidog在 src/.lib 目录下面

三:php

/root/OpenWrt-SDK-ipq806x-for-linux-i686-gcc-4.6-linaro_uClibc-0.9.33.2/staging_dir/toolchain-arm_v7-a_gcc-4.6-linaro_uClibc-0.9.33.2_eabi/usr/local

1:编译libxml2

export  STAGING_DIR=/root/OpenWrt-SDK-ipq806x-for-linux-i686-gcc-4.6-linaro_uClibc-0.9.33.2/staging_dir

./configure --prefix=/root/OpenWrt-SDK-ipq806x-for-linux-i686-gcc-4.6-linaro_uClibc-0.9.33.2/staging_dir/toolchain-arm_v7-a_gcc-4.6-linaro_uClibc-0.9.33.2_eabi/usr CC=arm-openwrt-linux-gcc --host=arm-openwrt-linux LD=arm-

openwrt-linux-ld --with-python=no

36584 行 if test "$PHP_FILEINFO" != "no"; then --> if test "$PHP_FILEINFO" != "yes"; then

wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz

./configure --prefix=/root/arm-openwrt-linux/php/tools/iconv/_install --host=arm-openwrt-linux --enable-static=yes

zlib

./configure --prefix=/root/arm-openwrt-linux/php/tools/zlib/_install

修改Makefile

curl

./configure --prefix=/root/arm-openwrt-linux/php/tools/curl/_install --host=arm-openwrt-linux-uclibcgnueabi

pcre

./configure --prefix=/root/arm-openwrt-linux/php/tools/pcre/_install --host=arm-openwrt-linux-uclibcgnueabi

mhash

echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache

./configure --prefix=/root/arm-openwrt-linux/php/tools/mhash/_install --host=arm-openwrt-linux-uclibcgnueabi  --cache-file=arm-linux.cache

libmcryp

echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache

./configure --prefix=/root/arm-openwrt-linux/php/tools/libmcryp/_install --host=arm-openwrt-linux  --cache-file=arm-linux.cache --enable-dynamic-loading

make 还会出错

vi arm-linux.cache

ac_cv_func_realloc_0_nonnull=${ac_cv_func_realloc_0_nonnull=no} --->ac_cv_func_realloc_0_nonnull=${ac_cv_func_realloc_0_nonnull=yes}

#mcrypt-2.6.8

#./configure --prefix=/root/arm-openwrt-linux/php/tools/mcrypt-2.6.8/_install --host=arm-openwrt-linux-uclibcgnueabi CPPFLAGS="-I/root/arm-openwrt-linux/php/tools/mhash/_install/include -I/root/arm-openwrt-

#linux/php/tools/libmcryp/_install/include"  LDFLAGS="-L/root/arm-openwrt-linux/php/tools/mhash/_install/lib -L/root/arm-openwrt-linux/php/tools/libmcryp/_install/lib"

openssl

./config no-asm shared --prefix=/root/arm-openwrt-linux/php/tools/openssl/_install --cross-compile-prefix=arm-openwrt-linux-uclibcgnueabi-

jpeg-9

./configure --prefix=/root/arm-openwrt-linux/php/tools/jpeg-9/_install --host=arm-openwrt-linux

png

./configure --prefix=/root/arm-openwrt-linux/php/tools/libpng-1.6.25/_install --host=arm-openwrt-linux --with-zlib-prefix=/root/arm-openwrt-linux/php/tools/zlib/_install/ LDFLAGS="-L/root/arm-openwrt-linux/php/tools/zlib/_install/lib"

CPPFLAGS=-I"/root/arm-openwrt-linux/php/tools/zlib/_install/include"

#freetype

#./configure --prefix=/root/arm-openwrt-linux/php/tools/freetype/_install --host=arm-openwrt-linux --with-zlib=yes LDFLAGS="-L/root/arm-openwrt-linux/php/tools/zlib/_install/lib " CPPFLAGS="-I/root/arm-openwrt-

#linux/php/tools/zlib/_install/include"

./configure  --host=arm-openwrt-linux --target=arm-openwrt-linux  --disable-all --enable-fpm --enable-session --enable-mbstring=all --enable-static=yes --enable-sockets --enable-bcmath --enable-exif --enable-mbstring --enable-json --

enable-fileinfo --enable-zip --with-zlib-dir=/root/arm-openwrt-linux/php/tools/zlib/_install --enable-hash --enable-ctype  --enable-pdo  --enable-ftp --disable-soap --disable-posix --disable-sysvmsg --disable-tokenizer --disable-wddx --

disable-xml --disable-xmlreader --disable-xmlwriter --disable-opcache --disable-filter --disable-dom --disable-dba --disable-calendar --without-pear --with-iconv=/root/arm-openwrt-linux/php/tools/iconv/_install --with-curl=/root/arm-

openwrt-linux/php/tools/curl/_install --with-pcre-dir=/root/arm-openwrt-linux/php/tools/pcre/_install --with-mhash=/root/arm-openwrt-linux/php/tools/mhash/_install --with-mcrypt=/root/arm-openwrt-linux/php/tools/libmcryp/_install --

with-openssl=/root/arm-openwrt-linux/php/tools/openssl/_install --with-jpeg-dir=/root/arm-openwrt-linux/php/tools/jpeg-9/_install --with-gd --with-png-dir=/root/arm-openwrt-linux/php/tools/libpng-1.6.25/_install --with-sqlite3 --with-

pdo-sqlite  --enable-pcntl  --with-mysqli=mysqlnd  --with-mysql=mysqlnd  --with-pdo-mysql=mysqlnd

从php 5.3后可以使用mysqlnd代替libmysqlclient.a

mysql 编译

ncurses

./configure --prefix=/root/arm-openwrt-linux/php/tools/ncurses-6.0/_install --host=arm-openwrt-linux

mysql

#./configure --prefix=/data/caimore/usr/local/mysql --host=arm-openwrt-linux ac_cv_sys_restartable_syscalls='no' LDFLAGS="-L/root/arm-openwrt-linux/php/tools/ncurses-6.0/_install/lib " CPPFLAGS="-I/root/arm-

#openwrtlinux/php/tools/ncurses-6.0/_install/include" --with-plugins=innobase,myisam --enable-thread-safe-client

./configure  --host=arm-openwrt-linux ac_cv_sys_restartable_syscalls='no' --enable-static -without-debug --without-doc --without-man --with-charset=gb2312 --with-extra-charsets=ascii,latin1,utf8 LDFLAGS="-L/root/arm-openwrt-

linux/php/tools/ncurses-6.0/_install/lib " CPPFLAGS="-I/root/arm-openwrtlinux/php/tools/ncurses-6.0/_install/include"

http://www.lai18.com/content/10025588.html

http://blog.163.com/figo_2007@126/blog/static/2318076520112831423903/

你可能感兴趣的:(交叉编译php,mysql)