交叉編譯配置移植php,構建交叉編譯器

本文目錄一覽:

交叉編譯完的程序如何移植到友善之臂4412開發板?

首先,你要保證你編譯的程序使用的交叉編譯鏈是開發板支持的,例如arm-linux-4.3.2,一般是在虛擬機下面的linux系統下的/etc/profile裡面添加編譯鏈路徑;

接着,需要確保使用的內核是開發板目前使用的內核,一般MINI2440是使用linux-2.6.30版本的,這個要在程序的makefile文件裡面改;

還有,如果你使用靜態編譯方式文件會比較大,但是不用依賴庫,如果是用動態編譯,文件就比較小,但是依賴動態庫,如果放到開發板上運行提示缺少動態庫,就證明你沒有把動態庫放進開發板的/lib裡面,可以用ldd指令查看需要哪些庫;

最後,記住移植的方式可以使用NFS或者TFTP,U盤也可以,放到開發板上後必須在文件存放的當前目錄下./可執行文件,或者把文件放入/bin或者/sbin下面,就可以直接可執行文件,不用加./

你可以在程序裡面加些調試信息輸出,例如printf,以此證明有執行。

交叉編譯移植時makefile怎麼寫

在demo的makefile中添加相應等的文件就可以了,cpp文件相應的SRC,h文件的目錄要被包含進去,這樣就餓可以了,靜態庫的路徑要是絕對路徑!!!,這樣就可以變異通過了。

[求助][急!!]php和iconv庫交叉編譯的問題

可以在-with-iconv-dir= 後面接上你的iconv安裝路徑 比如 –with-iconv-dir=/usr/local/iconv

apache在arm linux上的交叉編譯,移植

當年做NAS方案的時候,我做過apche+php+mysql。

一般來說編譯apache都不是單單的編譯這個的,需要apache+php+libxml因為少了一個基本上配置apache很難辦,尤其是arm-linux的時候。一般都是先編譯apache然後不要install,編譯完後要拷貝一個php5到module目錄,然後開始配置和編譯php5。好了後再install apache。如果你要用mysql的話還要麻煩。

交叉編譯PHP問題,怎麼解決

因為目標板跟主機都是X86架構,正常來說,只要主機編譯通過並順利執行的程序,目標板應該也能順利,但這種不穩的方法,不妥當,於是決定還是為了心安,用交叉編譯工具來編譯程序

進入到php源代碼

CC=某某交叉編譯器 ./configure –prefix=/home/app/php –with-gd=/home/app/gd

gd我已經進行了交叉編譯,包含了jpeg,png,freetype等東西了,這裡就略帶了

按照我上面的配置,產生了一個錯誤

configure: error: GD build test failed cross compile

提示說找不到GD組建,於是重新確定了一下路徑有沒錯,那當然是沒錯的啦

於是去除了交叉編譯器

./configure –prefix=/home/app/php –with-gd=/home/app/gd

這樣的配置,就能如常執行下去

最後實在沒辦法了,看一下配置日誌

vi config.log

發現以下信息

warning: libjpeg.so.62, needed by /home/app/gd/lib/libgd.so, not found (try using -rpath or -rpath-link)

庫問題,雖然編譯了jpeg但是,交叉編譯器不懂去找這些庫,好吧,好人做到底,

find -name libjpeg.so.62 找出庫,拷貝到gd的安裝目錄下的 lib 文件夾

如何在OPENWRT上安裝PHP

安裝PHP

PMBLOG是一個簡單的靜態博客程序,只需要PHP,不需要數據庫的支持,這對於小內存小功耗的路由來說是再友好不過的。下面我就講講如何安裝PMBLOG。

首先我們需要下載PHP及其相關的一些擴展。

opkg update

opkg install php5 php5-cgi php5-mod-mcrypt php5-mod-curl php5-mod-hash php5-mod-json

配置PHP

編輯php.ini文件

vi /etc/php.ini

其中將

;extension = ctype.so

;extension = curl.so

;extension = hash.so

;extension = json.so

三個前面的;去掉,用以啟用擴展

並將;date.timezone =修改為date.timezone = Asia/Shanghai,並將;doc_root=”/www”修改為;doc_root=”/www/root”。

如果你沒有設置過系統時區的話還需要設置系統時區。打開LUCI界面,進入系統 – 系統屬性 – 基本設置中將時區改為Asia/Shanghai。

最後你需要安裝一個時區信息軟件包,否則系統無法識別時區。

opkg install zoneinfo-asia

uhttpd配置端口轉發

接着需要配置端口轉發。由於默認的是LUCI佔用80端口,但我比較喜歡80端口放網站,所以我將LUCI挪到了8080端口,而PHP則使用80端口。

vi /etc/config/uhttpd

將第5行的0.0.0.0:80修改為0.0.0.0:8080,

option rfc1918_filter 1這一句在前面加上#號注釋掉

同時在文件末尾增加如下代碼

config uhttpd web

list listen_http 0.0.0.0:80

option home /www/root

option cgi_prefix /cgi-bin

option index_page “index.html index.php”

list interpreter “.php=/usr/bin/php-cgi”

保存後重啟uhttpd

/etc/init.d/uhttpd restart

上傳PMBLOG程序

上傳PMBLOG程序到/www/root文件夾下,並按照HowToInstall的指導配置好config.php文件。

WEB訪問PMBLOG程序目錄即可大功告成!

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/154605.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-16 14:13
下一篇 2024-11-16 14:13

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • 手機Python編譯器愛心代碼

    本文將從以下幾個方面對手機Python編譯器愛心代碼做詳細闡述,旨在幫助讀者了解該編譯器的基本功能和特點: 一、簡要介紹 手機Python編譯器愛心代碼是一款可以在手機上運行Pyt…

    編程 2025-04-29
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若服務器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • PHP登錄頁面代碼實現

    本文將從多個方面詳細闡述如何使用PHP編寫一個簡單的登錄頁面。 1. PHP登錄頁面基本架構 在PHP登錄頁面中,需要包含HTML表單,用戶在表單中輸入賬號密碼等信息,提交表單後服…

    編程 2025-04-27
  • PHP與Python的比較

    本文將會對PHP與Python進行比較和對比分析,包括語法特性、優缺點等方面。幫助讀者更好地理解和使用這兩種語言。 一、語法特性 PHP語法特性: <?php // 簡單的P…

    編程 2025-04-27
  • Python編譯器下載安裝教程

    本文將從多個方面,為大家提供python編譯器下載和安裝的詳細步驟。 一、下載Python編譯器 1、打開Python的官網,即 https://www.python.org/do…

    編程 2025-04-25
  • VS編譯器詳解

    一、介紹 Visual Studio(簡稱VS)是由Microsoft開發的一款集成開發環境。VS中包含了集成的開發工具、調試工具和各種語言編譯器。以C++為例,VS提供了Micr…

    編程 2025-04-24
  • PHP版本管理工具phpenv詳解

    在PHP項目開發過程中,我們可能需要用到不同版本的PHP環境來試驗不同的功能或避免不同版本的兼容性問題。或者我們需要在同一台服務器上同時運行多個不同版本的PHP語言。但是每次手動安…

    編程 2025-04-24

發表回復

登錄後才能評論