1. 程式人生 > >lunix下的php-lua的動態庫移動(從這臺機器編譯, 需要到其他機器使用)

lunix下的php-lua的動態庫移動(從這臺機器編譯, 需要到其他機器使用)

這篇文章是基於Linux下安裝PHP的lua擴充套件庫進行說明的。當時沒有注意php-lua從0.9開始就需要用lua-5.2進行編譯的。

當時介紹Linux下安裝PHP的lua擴充套件庫時,裡面有展示, 所在伺服器的lua版本是5.1, 結果發現擴充套件庫引用沒有問題,但是在程式碼引用的時候就引用不了。

因為我內網的伺服器有其他程式在跑,其他人在用, 我是不能隨便把伺服器上的lua版本升級的,於是我想到在其他機器上編譯,然後將編好的動態庫拿回來用。

1.找一臺可以自己隨便用的linux機器

2.下載lua-5.2.1, 修改makefile, 使其能生成動態庫(lua的編譯指令碼預設是隻生成靜態庫, 不生成動態庫的)。我這裡修改makefile參照了:

https://blog.csdn.net/yzf279533105/article/details/77586747

3.make好lua, 並make install。

4.參照Linux下安裝PHP的lua擴充套件庫的方式, 進行php-lua的編譯安裝。說明:在php-lua的編譯中, 有個fPIC的報錯, 說是在lua編譯時加上fPIC的編譯引數就可以了, 但是呢, 我這裡加了, 還是一樣會報錯, 所以也要操作把liblua.so複製到/usr/lib64下

5.編譯完成, 將php-lua編譯得到的lua.so放到目標機的php的extentsionDir(放擴充套件庫的目錄 )

6.重點:同時一定要將lua編譯得到的liblua.so, 放在目標機的/usr/lib64.