SWIG kullanarak bir PHP uzantısı inşa. Bu benim linux kutusunda benim php projede yerleştirilen paylaşılan lib olduğunu. Proje dizininde yaşayan /var/www/my_web ve uzatma paylaşılan lib /var/www/my_web/resources/library/ yerleştirilir.
Dosyasındaki /etc/php5/cli/php.ini, ben satırı eklendi:
extension=/var/www/my_web/resources/library/my_lib.so
Dosyasındaki /etc/php5/apache2/php.ini, ben satırı eklendi:
extension=/var/www/my_web/resources/library/my_lib.so
Ben şunları yapar bir test php sayfası var ...
print_r(get_loaded_extensions());
print_r(get_extension_funcs("my_lib"));
Ben cli PHP ile o test sayfası çalıştırırsanız, her şey yolunda. Ben bile kaydetmek ve bir tarayıcıda açık olabilir html olsun. Iyi görünüyor. Aslında sayfasına göz Ancak, ben alıyorum:
[Fri Jan 07 11:37:18 2011] [notice] child pid 3918 exit signal Segmentation fault (11)
[Fri Jan 07 11:37:18 2011] [notice] child pid 3919 exit signal Segmentation fault (11)
apache günlüğüne.
Diğer gayet my_web iş parçaları, ancak bu test sayfası değildir. Ben fark ettim başka bir şey ben sadece diğer hat olmadan print_r(get_loaded_extensions()); yaparsanız, o apache çalışıyor ve ben dolu bir uzantısı olarak listelenen my_lib görmek yapmak olduğunu. Yani, ben sorunlar ortaya yok apache my_lib erişmeye çalıştığınızda yalnızca görünüyor.
Ben php 5.3.2, apache 2.2.14 kullanıyorum ve 2.0.1 swig duyuyorum.
, Herhangi bir öneri ya da yorum büyük takdir edin.
Teşekkürler.