Home  >  Article  >  Backend Development  >  Porting PHP5530 on ARM

Porting PHP5530 on ARM

WBOY
WBOYOriginal
2016-07-29 09:08:551295browse

1. Cross-compile libxml2 and zlib, and extend the lib library of arm-linux-gcc. Among them, libxml2 is a library file necessary for PHP5 installation.

1.1 Install libxml2.

Unzip libxml2-2.7.8.tar.gz to the home directory.

tar zxvf libxml2-2.7.8.tar.gz -C /home
cd /home/libxml2-2.7.8
CC=arm-linux-gcc
./configure --host=arm-linux --prefix=/usr/local/libxml2
make
make install
Since then, libxml2 has been installed in the /usr.local/libxml2 directory.

1.2 Install zlib

Unzip zlib-1.2.5.1.tar.gz to the home directory.

tar zxvf zlib-1.2.5.1.tar.gz -C /home
cd /home/zlib-1.2.5.1
CC=arm-linux
./configure --prefix=/usr/local/zlib
make 
make install
Since then, zlib has been installed in the /usr/local/zlib directory.

2. Cross-compile PHP

Unzip php-5.5.30.tar.gz to the home directory.

tar zxvf php-5.5.30.tar.gz -C /home
cd /home/php-5.5.30
CC=arm-linux
./configure --host=arm-linux --prefix=/usr/local/php --disable-all --enable-sockets --with-libxml-dir=/usr/local/libxml2 --with-zlib-dir=/usr/local/zlib
make
make install
Since then, php has been installed in the /usr/loal/php directory.
I can see that the total number of php and php-cgi in the php/bin directory is more than 20M. Because arm resources are tight, we need to streamline PHP and remove debugging information. Execute the following commands in php/bin/:

arm-linux-strip php
arm-linux-strip php-cgi
After executing the above two commands, take a look at the file size of php and php-cgi. The file size is only a few M.

3. Copy the compiled PHP to the target board

cd /usr/local
tar zcvf php.tar.gz php/*
copies php.tar.gz to the /usr/local directory on the target board through NFS.

cd /usr/local
tar zxvf php.tar.gz
Finally, php was successfully transplanted to the target board. At this point, you can delete the php.tar.gz of the target board.

4. Description

After decompressing php-5.5.30.tar.gz on the host machine, there will be two files: php.ini-development and php.ini-production. This is called the php.ini configuration file. We need to copy php.ini-development to the /usr/local/php/libs directory on the target board. And change the file name to php.ini. This article does not describe the configuration of the php.ini file. You can search online for relevant configurations. Normally the default is fine.


The above introduces the porting of PHP5530 on ARM, including the relevant aspects. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn