■インストール環境
- CentOS 5.2
- システムは64bit版
- rootでログオン出来る
Pleskがインストールされていたが、yumはインストールされていないマシンでした。そこで、rpmの依存パッケージ地獄から脱する為にyumをインストールする事にした。
yumのインストール
最重要注意点
Pleskでサーバを管理してる方は、インストール後に「yum update」を実行してはならない!Pleskが死んでしまいます。
必要パッケージリスト
- yum-3.0.5-1.el5.centos.5.noarch.rpm
- yum-metadata-parser-1.0-8.fc6.x86_64.rpm
- python-elementtree-1.2.6-5.x86_64.rpm
- python-urlgrabber-3.1.0-2.noarch.rpm
- python-sqlite-1.1.7-1.2.1.x86_64.rpm
- m2crypto-0.16-6.el5.1.x86_64.rpm
- rpm-python-4.4.2-47.el5.x86_64.rpm
- python-iniparse-0.2.3-4.el5.noarch.rpm(依存関係の為)
実行コマンド
rpm -ivh yum-3.0.5-1.el5.centos.5.noarch.rpm rpm -ivh yum-metadata-parser-1.0-8.fc6.x86_64.rpm rpm -ivh python-elementtree-1.2.6-5.x86_64.rpm rpm -ivh python-urlgrabber-3.1.0-2.noarch.rpm rpm -ivh python-sqlite-1.1.7-1.2.1.x86_64.rpm rpm -ivh m2crypto-0.16-6.el5.1.x86_64.rpm rpm -ivh rpm-python-4.4.2-47.el5.x86_64.rpm rpm -ivh python-iniparse-0.2.3-4.el5.noarch.rpm
※上述のパッケージは既に最新でない可能性がある。
yum update yum yum update python* yum update m2crypto yum update rpm-python yum update python-iniparse
参考文献
以上で「yum」が使えるようになりました~!
■ffmpegのインストール
このままでは「yum」で「ffmpeg」がインストールできない。なので・・・
1.RPMforgeをrpmリポジトリに追加
追加する為に必要なパッケージをGET
wget http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm
リポジトリに追加
rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm
デフォルトでRPMforgeを使わないように変更
vi /etc/yum.repos.d/rpmforge.repo
で「enabled = 1」を「enabled = 0」と変更する。
今後、RPMforgeを対象に含める場合は「yum –enablerepo=rpmforge install ●●●」とする。
2.署名のインストール(一応)
wget http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt rpm --import RPM-GPG-KEY.dag.txt
3.ffmpegインストール実行コマンド
yum --enablerepo=rpmforge install ffmpeg
参考文献
■ffpmpeg-phpのインストール
PHPからffmpegを利用しない人は必要ない。
1.必要な環境を事前にインストール
yum install php-devel yum install re2c yum --enablerepo=rpmforge install ffmpeg-libpostproc yum --enablerepo=rpmforge install ffmpeg-devel
2.ffmpeg-phpのインストール
wget http://nchc.dl.sourceforge.net/sourceforge/ffmpeg-php/ffmpeg-php-0.5.3.1.tbz2 tar jxvf ffmpeg-php-0.5.3.1.tbz2 cd ffmpeg-php-0.5.3.1 phpize ./configure --enable-gpl --enable-libmp3lame --enable-libamr-nb --enable-libamr-wb --enable-libxvid --disable-ffplay --disable-ffserver --enable-libfaac --enable-libfaad --enable-libx264 --enable-shared --enable-nonfree make make install
エラー1
makeの途中でなんかエラーが出る。
/root/ffmpeg-php-0.5.3.1/ffmpeg_frame.c:202: warning: implicit declaration of function 'img_convert' /root/ffmpeg-php-0.5.3.1/ffmpeg_frame.c: In function '_php_crop_frame': /root/ffmpeg-php-0.5.3.1/ffmpeg_frame.c:260: warning: implicit declaration of function 'img_copy' /root/ffmpeg-php-0.5.3.1/ffmpeg_frame.c: In function '_php_resample_frame': /root/ffmpeg-php-0.5.3.1/ffmpeg_frame.c:282: error: 'ImgReSampleContext' undeclared (first use in this function) /root/ffmpeg-php-0.5.3.1/ffmpeg_frame.c:282: error: (Each undeclared identifier is reported only once /root/ffmpeg-php-0.5.3.1/ffmpeg_frame.c:282: error: for each function it appears in.) /root/ffmpeg-php-0.5.3.1/ffmpeg_frame.c:282: error: 'img_resample_ctx' undeclared (first use in this function) /root/ffmpeg-php-0.5.3.1/ffmpeg_frame.c:308: warning: implicit declaration of function 'img_resample_full_init' /root/ffmpeg-php-0.5.3.1/ffmpeg_frame.c:321: warning: implicit declaration of function 'img_resample' /root/ffmpeg-php-0.5.3.1/ffmpeg_frame.c:326: warning: implicit declaration of function 'img_resample_close' make: *** [ffmpeg_frame.lo] エラー 1
解決策
cp ffmpeg_frame.loT ffmpeg_frame.lo
参考
3.phpへモジュールを関連付ける
以下のコマンドを実行し、mbstringの設定ファイルをコピーし、ffmpeg用にする。
cd /etc/php.d cp mbstring.ini ffmpeg.ini
但し、コピーしただけでは設定の記述が古いファイルのままなので、「vi」コマンドで内容を修正する。
vi ffmpeg.ini
以下のように記述すれば良い。
; Enable ffmpeg extension module extension=ffmpeg.so
4.再起動
/etc/rc.d/init.d/httpd restart
エラー2
phpでなんかエラーが出る。
undefined symbol: le_ffmpeg_frame in Unknown on line 0
解決策
どうやらPHP5.3系でffmpeg-php0.5系をインストールすると不具合が発生するようなので0.6系を使用してmakeからやり直すと前述のエラー1も発生せずにインストールが成功する。
ピンバック: ffmpegthumbnailerインストール - blog.nodoka.org