0

我正在尝试通过 shell_exec(文本到语音)执行 shell 命令。该命令在 shell 中运行良好,路径设置正确,但从 PHP 执行时找不到某些库。这是命令

shell_exec('echo "nice voice" | text2wave -o /path/output.wav -eval "(voice_selected_voice)" 2>&1 ');

这是我得到的输出:

/usr/bin/festival:/opt/bitnami/common/lib/libstdc++.so.6:未找到版本“GLIBCXX_3.4.11”(/usr/bin/festival 需要)

/usr/bin/festival:/opt/bitnami/common/lib/libstdc++.so.6:未找到版本“GLIBCXX_3.4.9”(/usr/bin/festival 需要)

/usr/bin/festival:/opt/bitnami/common/lib/libstdc++.so.6:未找到版本“GLIBCXX_3.4.11”(/usr/lib/libestools.so.2.1 需要)

... 等等 ...

看起来它找不到那些库,但它们确实在那里

谢谢

4

1 回答 1

0

当您通过shell_exec命令运行这些命令时,您正在使用apache用户权限运行它们。您需要sudo通过 root 访问它(稍微修改 sudoers 文件)。

于 2013-10-09T21:03:08.097 回答