需求前瞻:php
最近因需求,須要支持php調用現有的Lua代碼,能夠減小php的代碼量,同時在維護上也比較方便,不會照成需求變動,須要同時修改兩份代碼php7
第一步:安裝php7.0及以上版本,此處安裝方法就略過lua
第二步:.net
官網下載最新lua安裝包5.3.3翻譯
www.php.net官網搜索lua,下載php對應的lua包文檔
http://php.net/manual/zh/book.lua.php 此處有詳細的安裝說明源碼
切記php、lua、php的lua擴展包,這三個包的必須是相對應的版本,如php7.0及以上,擴展包lua-2.0.2,lua的版本必須5.2以上,不然會編譯失敗it
擴展包下載地址:http://pecl.php.net/package/lua編譯
解壓後的安裝包若是不存在configure文件,在該目錄下執行phpize便可生成擴展
configure帶參數問題,能夠查看該文件的說明,運行出錯的話大部分就是缺失文件,直接在末尾加上參數「--with xxx=缺失文件路徑」
錯誤處理:
編譯源碼若是失敗,認真看失敗緣由,英文很渣的我都是一字一句的翻譯,其實多看看也就習慣了
如5.3.3版本的lua直接使用默認makefile編譯安裝後,安裝擴展時,當連接liblua.a報錯,提示:recompile with fpic,此時就須要刪除已安裝的lua版本,執行make uninstall便可,修改makefile文件,編譯選項加上 -fpic便可,從新編譯安裝
PS:PHP全部支持擴展都可到http://pecl.php.net下載,官方也均有提供安裝及使用方式,認真查閱文檔便可,configure --help可查看支持版本等信息
知其然知其因此然