command works fine through terminal but not shell_exec php

余生颓废 提交于 2019-12-08 05:47:50

问题


Got a weird issue i have installed wav2png on my mac osx with lion now and works fine when using terminal no problem but when i try to run it using shell_exec with php like below

$wav2png = shell_exec("cd {$targetDir} && /usr/bin/wav2png --foreground-color=000000ff --background-color=00000000 -o example2.png f86150f88d.wav 2>&1");
echo "<pre>" . $wav2png . "</pre>";

I get the output

dyld: Library not loaded: /opt/local/lib/libpng15.15.dylib
  Referenced from: /usr/bin/wav2png
  Reason: Incompatible library version: wav2png requires version 28.0.0 or later, but libpng15.15.dylib provides version 23.0.0

Cant find a way to update libpng???

Any suggestions why it will work fine through terminal but not shell_exec php?


回答1:


I think problem is in LD_LIBRARY_PATH and/or with library paths in general.

Go to shell and type

echo $LD_LIBRARY_PATH

and

ldd /usr/bin/wav2png

Do exact same from php script (be sure to grab output from these commands) and compare, I'm pretty sure you find the answer.



来源:https://stackoverflow.com/questions/12392468/command-works-fine-through-terminal-but-not-shell-exec-php

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!