apache+php5+sqlite3移植 版權聲明:本文為部落客原創文章,未經部落客允許不得轉載。
以上就介紹了apache+php5+sqlite3移植,包含了方面的內容,希望對PHP教學有興趣的朋友有幫助。
1. sqlite3移植參考 http://blog.csdn.net/huyubin/article/details/46726585 的動態
編譯。
apache運作時會呼叫libsqlite3.so這個動態函式庫,所以需要:
a. 將libsqlite3.so.o.8.6拷貝到/usr/lib目錄下
lnb. 在/usr/lib目錄下建立軟連結-s libsqlite3.so.0.8.6 libsqlite3.so
ln -s libsqlite3.so.o.8.6 libsqlite3.so.0
2. ? -5.6.10.tar.gz
b. 進入php-5.6.10目錄,新安裝目錄:
mkdir my_install
c. 執行./configure, 生產Makefile檔案:install
c. 執行./configure, 生產Makefile檔案:install /arm xilinx/lin/bin/arm-xilinx-linux-gnueabi-gcc CXX=/usr/local/arm/arm-xilinx/lin/bin/arm-xilinx-linux-gnueabi-g++ CFLAGS="-g -O2" LDFLAGS+ =-ldl ./configure --prefix=/home/huyubin/zynq/php/php-5.6.10/my_install/ --host=arm-xilinx-linux-gnueabi
--disable-all --with-apxs2=/mnt/ram/apache/bin/apxs --with-config-file-path=/mnt/flash/php --with-config-file-scan-dir=/ mnt/flash/php --with-sqlite3=/home/huyubin/zynq/sqlite/sqlite-autoconf-3081002/my_install --with-pdo-sqlite --enable-pdo
其中:--with-apxs2=/mnt /ram/apache/bin/apxs // 為apache的安裝目錄,用來產生libphp5.so。 (主機與ARM板目錄一致)
--with-config-file-path=/mnt/flash/php // 設定PHP的設定檔php.ini目錄
--with-config-file-scan-dir=/ mnt/flash/php
// sqlite3主機安裝目錄,編譯時需使用(需先完成sqlite3的編譯)
--with-sqlite3=/home/huyubin/zynyn/instae/38806p d. make
e. sudo make install
PHP擴充PDO編譯安裝參考:
http://blog.csdn.net/liruxing1715/article/details執行
../../my_install/bin/phpize
CC=/usr/local/arm/arm-xilinx/lin/bin/arm-xilinx-linux-gnueabi-gcc CXX=/usr/local/arm/arm-local/arm xilinx/lin/bin/arm-xilinx-linux-gnueabi-g++ CFLAGS="-g -O2" LDFLAGS+=-ldl ./configure --prefix=/home/huyubin/zynq/php/php-5.6.10/my_install / --host=arm-xilinx-linux-gnueabi
--with-php-c/../my_install/bin/php-config
make
sudo make install
g. 產生pdo_sqlite.oo =/usr/local/arm/arm-xilinx/lin/bin/arm-xilinx-linux-gnueabi-gcc CXX=/usr/local/arm/arm-xilinx/lin/bin/arm-xilinx-linux-gnueabi- g++ CFLAGS="-g -O2" LDFLAGS+=-ldl ./configure --prefix=/home/huyubin/zynq/php/php-5.6.10/my_install/ --host=arm-xilinx-linux-gnueabi
--with-php-c/../my_install/bin/php-config --with-pdo-sqlite=/home/huyubin/zynq/sqlite/sqlite-autoconf-3081002/my_install/
make
努
h. 將php-5.6.10目錄下的php.ini-development改為php.ini,做為PHP的配置文件,
"
extension=pdo.so
extension=pdo.so
extension=pdo_sqlite.so
修改:
[sqlite3]
修改:
[sqlite3]
.
3. apache移植參考http://blog.csdn.net/huyubin /article/details/46817007,
不過httpd.conf檔案需要再次修改:
a. 新增PHP模組支援(如果不手動修改,後面編譯php b.辨識*.php等文件
SetHandler app /x-httpd-php
SetHandler app Filehttpd-php
的/mnt/ram/apache/moudles/目錄下有沒有libphp5.so, 這個檔案是
編譯PHP時在apache的安裝目錄下產生的。
5. 新目錄 /mnt/flash/php/, 將php.ini、pdo.so和pdo_sqlite.so拷貝到這個目錄。
6. 確認libsqlite3.so.o.8.6在/usr/lib目錄下,並建立軟連線。
PHP程式碼:
需要手動建立test.db資料庫<html><body><h1>It works!</h1>
<?php
echo "my first php shell!";
echo "test sqlite!";
$db = new PDO('sqlite:/mnt/flash/test.db');
if(!$db){
echo $db->lastErrorMsg();
}else{
echo "Open database successfully\n";
}
phpinfo();
?>
</body></html>