2012-09-12 121 views
0

有一个奇怪的问题,我已经在我的mac osx上安装了wav2png与狮子现在和工作正常时使用终端没有问题,但是当我尝试运行它使用shell_exec与PHP像下面命令通过终端工作正常,但不是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?

+0

/opt/local/lib/libpng15.15.dylib确实存在? – dbf

+0

嗨dbf是的libpng15.15.dylib存在检查 – user1503606

回答

0

我认为问题出在LD_LIBRARY_PATH和/或一般库路径。

进入外壳并键入

echo $LD_LIBRARY_PATH 

ldd /usr/bin/wav2png 

做完全一样从PHP脚本(一定要抓住这些命令输出)和比较,我敢肯定你会发现答案。

+0

嗨感谢您的答复,如果我输入echo $ LD_LIBRARY_PATH到终端我得到一个空输出,如果我输入ldd/usr/bin/wav2png到终端我得到-bash:ldd:找不到命令? – user1503606

+0

@ user1503606:请分享os信息(uname -a; cat/etc/* release *) – rkosegi

+0

Darwin Mac-mini.local 11.4.0 Darwin Kernel版本11.4.0:Mon Apr 9 19:32:15 PDT 2012; root:xnu-1699.26.8〜1/RELEASE_X86_64 x86_64 – user1503606

相关问题