Linux下把靜態庫編譯進PHP的方法

2021-09-22 00:27:26 字數 309 閱讀 5249

一般要呼叫c語言的函式需要自己寫php擴充套件,而以filename.a命名的靜態庫的函式是以c語言的方式來呼叫的,寫php擴充套件->把靜態庫加入php->編譯php。

把靜態庫加入php:

把要編譯的靜態庫鏈結存入環境變數。假設靜態庫的檔案名叫libnpc.a,放在/home目錄下。在php的安裝目錄下輸入如下命令:export ldflags=」–l/home –lnpc」

這個環境變數的作用就是讓php在編譯時知道要把這個庫也一起編譯進去。

當編譯好之後可以通過unset ldflags來刪除之前的環境變數。

Linux下靜態庫編譯

linux下動態庫檔案的擴充套件名為 so shared object 按照約定,所有動態庫檔名的形式是libname.so 可能在名字中加入版本號 這樣,執行緒函式庫被稱作libthread.so。靜態庫的檔名形式是libname.a。共享archive的檔名形式是libname.sa。共享arc...

Linux 下編譯鏈結動靜態庫

linux 版本是 red hat 9 核心版本是 2.4.18 輸入 which gcc 檢視 gcc 的位置在 usr bin gcc gcc v 檢視 gcc 編譯前的配置資訊 prefix usr 說明了安裝目錄 沒有 with headers 說明預設的 include 就在安裝目錄下 所...

linux下編譯靜態庫並呼叫

目錄結構如下 root ubuntu home aaa maketest ls l total 12 rw r r 1 root root 127 sep 24 19 09 main.cpp rw r r 1 root root 99 sep 24 19 18 test.cpp rw r r 1 r...