PHP popen应用程序无法打开共享对象

时间:2015-10-06 15:58:48

标签: php c++ linux apache apache2

我用boost框架创建了一个简单的C ++应用程序。 应用程序从命令行运行正确。

在此之后,我为这个二进制文件创建了一个popen的PHP文件。

<?php
  $handle = popen("./webParser", "r");
  //echo $handle . ":: " . gettype($handle);
  $read = fread($handle, 2096);
  echo $read;
  pclose($handle);
  //echo "done";
?>

访问该网站后,我收到了来自apache2/error_log

的以下错误消息
./webParser: error while loading shared libraries: libboost_log.so.1.59.0: cannot open shared object file: No such file or directory

系统是openSuse Linux。

已完成的步骤:

  • 将lib路径插入/etc/ld.so.conf并运行ldconfig

1 个答案:

答案 0 :(得分:1)

您需要确保为运行Web服务器的用户设置了LD_LIBRARY_PATH,其中包含您已构建的共享库的位置。