一尘不染

在Lampp服务器中从php运行ffmpeg时找不到GLIBCXX_3.4.9

linux

我编写了一个php程序,该程序使用ffmpeg从图像序列创建视频。

<?php
    $res = shell_exec("ffmpeg -framerate 50 -i image/image%d.png -c:v libx264 -r 30 -pix_fmt yuv420p out.mp4 2>&1");
    echo "$res";

当我运行它时

它说GLIBCXX_3.4.15GLIBCXX_3.4.9GLIBCXX_3.4.11 没有找到

ffmpeg:/opt/lampp/lib/libstdc++.so.6:版本’GLIBCXX_3.4.15’不是

找到(由/usr/lib/i386-linux-gnu/libjack.so.0要求)ffmpeg:

/opt/lampp/lib/libstdc++.so.6:找不到版本“ GLIBCXX_3.4.9”

(由/usr/lib/i386-linux-gnu/libzmq.so.3要求)ffmpeg:

/opt/lampp/lib/libstdc++.so.6:找不到版本“ GLIBCXX_3.4.11”

(/usr/lib/i386-linux-gnu/libopencv_core.so.2.4要求)ffmpeg:

/opt/lampp/lib/libstdc++.so.6:找不到版本“ GLIBCXX_3.4.9”

(由/usr/lib/i386-linux-gnu/libopencv_core.so.2.4要求)

但是从终端,ffmpeg -framerate 50 -i image/image%d.png -c:v libx264 -r 30 -pix_fmt yuv420p out.mp4命令可以正常工作。 为什么php 在终端运行正常时 找不到库
?而我该怎么做才能解决php中的问题呢?提前致谢。


阅读 214

收藏
2020-06-07

共1个答案

一尘不染

从PHP脚本执行ffmpeg命令时,我也遇到类似的问题。我通过从终端执行以下命令找到了解决方案。我在此粘贴该命令,以便有人从中获得帮助。

sudo mv /opt/lampp/lib/libstdc++.so.6 /opt/lampp/lib/libstdc++.so.6.orig

现在只需运行您的php脚本,希望它能起作用。

2020-06-07