遇到一个奇怪的问题,我现在已经在我的mac-osx上用lion安装了wav2png,在使用终端时运行良好,没有问题,但当我尝试使用shell_exec和php运行它时,就像下面的一样
$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>";
我得到输出
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
找不到更新libpng的方法???
有什么建议吗?为什么它可以通过终端工作,但不能通过shell_exec-php?
我认为问题出在LD_LIBRARY_PATH和/或库路径中。
转到外壳并键入
echo $LD_LIBRARY_PATH
和
ldd /usr/bin/wav2png
从php脚本中执行完全相同的操作(一定要从这些命令中获取输出)并进行比较,我确信您找到了答案。