0

RHEL (Redhat Enterprise Linux) 5.6 (Tikanga) 環境に ffmpeg-php v0.6.0 をインストールしようとしています。PHP バージョン 5.2.17 を実行しており、次の ffmpeg パッケージがインストールされています。

  • ffmpeg-0.6.5-1.el5.rf
  • ffmpeg-devel-0.6.5-1.el5.rf
  • ffmpeg-libpostproc-0.6.5-1.el5.rf

これらのインストール手順に従いました。を実行するステップで立ち往生してmakeいます。次のエラーが表示されます。

In file included from /usr/include/sys/stat.h:105,
                 from /usr/include/php/main/php_streams.h:28,
                 from /usr/include/php/main/php.h:400,
                 from /usr/local/src/ffmpeg-php-0.6.0/ffmpeg-php.c:40:
/usr/include/bits/stat.h:88: error: field 'st_atim' has incomplete type
/usr/include/bits/stat.h:89: error: field 'st_mtim' has incomplete type
/usr/include/bits/stat.h:90: error: field 'st_ctim' has incomplete type
/usr/include/bits/stat.h:149: error: field 'st_atim' has incomplete type
/usr/include/bits/stat.h:150: error: field 'st_mtim' has incomplete type
/usr/include/bits/stat.h:151: error: field 'st_ctim' has incomplete type
In file included from /usr/include/php/main/php.h:406,
                 from /usr/local/src/ffmpeg-php-0.6.0/ffmpeg-php.c:40:
/usr/include/php/TSRM/tsrm_virtual_cwd.h:209: error: expected specifier-qualifier-list before 'time_t'
/usr/local/src/ffmpeg-php-0.6.0/ffmpeg-php.c: In function 'zm_startup_ffmpeg':
/usr/local/src/ffmpeg-php-0.6.0/ffmpeg-php.c:94: warning: implicit declaration of function 'avcodec_init'

他の人が同様の問題に遭遇したかどうかを確認するためにインターウェブをクロールしてきましたが、これまでのところ、ffmpeg-php の古いバージョンをインストールすることを推奨していることがわかりました。

私は古いバージョンのものを使用することに不満を持っており、他の誰かが上記のエラーに遭遇し、それらを正常に解決したかどうか、またはそれらの解決を開始するための正しい方向に私を向けることができるかどうか疑問に思っていました.

4

1 に答える 1

0

何時間も調べた後、何らかの理由で time.h が ffmpeg 1.2.1 で使用されているようです (これは私がテストしたものです)。これにより、同名の OS 独自のファイルと競合が発生しました。

私は PHP でコードを書くことはできません (そして PHP コードをほとんど読むことはできません) が、元のプロジェクトに変更を加えたtony2001によって維持されている git リポジトリを見つけました。および CentOS-6.4 (申し訳ありませんが、他のフレーバーではこれらをテストしていませんが、CentOS-6.4 で動作する場合は、RHEL 5.x および 6.x でも動作するはずです)

ここでレポを見つけることができます。

これが将来あなたに役立つことを願っています(そして、最終的にここに着陸する他の誰かがいるかもしれません)

PS:ちなみに、この回答を書いている時点でffmpeg 2.0がリリースされていますが、まだテストする機会がありません

于 2013-08-08T16:43:29.243 に答える