首頁 >後端開發 >php教程 >php C++擴充的開發 php c framework php c擴充 框架 php c extensio

php C++擴充的開發 php c framework php c擴充 框架 php c extensio

WBOY
WBOY原創
2016-07-29 08:53:581226瀏覽

最近兩天,學習了一下PHP c++擴充的開發流程。 中間遇到不少坑,特此紀錄。

建立一個mongo_cpp擴充

1. 建立擴充功能的目錄

     #cd php-5.3.6/ext m4

   放開內容:

   

PHP_ARG_ENABLE(hello, whether to enable hello support,🜎     [  --enable-hello           Enable hello support])

    也加入內容:

       PHP_REQUIRE_CXX()
       PHP_REQUIRE_CXX()

              PHP_ADD_LIBRARY(stdc++, 1, MONGO_CPP_SHARED_LIBADD)

        PHP_NEW_EXTENSION(mongo_cpp, mongo_cpp.cpp, $ext 3.產生configure與makefile     #/xxxx/php/bin/phpize




    --with-php-c/local/php5/bin/php-config


4. 編輯Makefile

cpp外其他cpp的編輯任務,並加入shared_objects_mongo_cpp;

    編譯過程可能還需要-f pp.h中使用巨集宣告函數

6. 在mongo_cpp.cpp中 先在入口函數中註冊所有新增的函數; 再在檔案最後部分加入函數的定義。

7.. sudo make  ; sudo make install;

     到此/usr/local/php5/lib/php/extensions/no-debug-non-zts-20100525/下有了 8.  如果生成mongo_cpp.so中用到了其他so(即使用的是.a,本人不理解為什麼),執行前,要添加其路徑到LD_LIBRARY_PATH.

9.有些宏函數也要查資料,此處不敘述。

以上就介紹了php C++擴充的開發,包含了p c,php方面的內容,希望對PHP教學有興趣的朋友有幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn