设置交叉编译路径
CC=/usr/local/arm_linux_4.3/usr/bin/arm-linux-gcc
CXX=/usr/local/arm_linux_4.3/usr/bin/arm-linux-g++
1、zlib http://www.zlib.net/zlib-1.2.11.tar.gz
sudo CC=/usr/local/arm_linux_4.3/usr/bin/arm-linux-uclibcgnueabi-gcc ./configure --prefix=/usr/local/zlib
2、php 的依赖 iconv
sudo wget https://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz
sudo CC=/usr/local/arm_linux_4.3/usr/bin/arm-linux-uclibcgnueabi-gcc CXX=/usr/local/arm_linux_4.3/usr/bin/arm-linux-uclibcgnueabi-g++ ./configure --prefix=/usr/local/libiconv --host=arm-linux
则需要对./srclib/getprogname.c做如下修改:
将原来的:
getprogname (void)
{
# if HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME /* glibc, BeOS */
...
}
改为:
getprogname (void)
{
# if ARM
char strProcessPath[1024] = {0};
if(readlink("/proc/self/exe", strProcessPath,1024) <=0)
{
return NULL;
}
char *strProcessName = strrchr(strProcessPath, '/');
if(strProcessName)
{
size_t nameLen = strlen(strProcessName);
char* namecopy = malloc(nameLen + 1);
if (namecopy)
{
namecopy[nameLen] = 0;
return memcpy(namecopy, strProcessName, nameLen);
}
}
return NULL;
# elif HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME /* glibc, BeOS */
...
}
另在该文件中添加: