fc2ブログ

fedora 14 で ffmpeg をソースから(まとめ)

いろいろとゴタゴタになってしまったので、
単純にやり方だけをまとめてみようと思います

動作環境は Fedora14 32bit です

yum -y groupinstall "Development Tools"
で開発ツールインストール


yum -y install yasm
でフリーソフト ffmpeg の外部ライブラリ使用に
必要なツールをインストール

cd /usr/local/src/
でインストール予定のディレクトリに移動し

cp /media/Fedora/article/toku3/ffmpeg-0.6.1.tar.bz2 .
で今回、付録に収録されているファイルを cp コマンド
でカレントディレクトリにコピーします

tar jxvf ffmpeg-0.6.1.tar.bz2
でファイルを解凍

さらに、今回このソフトを
コンパイルするのに必要なソースファイルも、付録としてついているので、
そのまま使わせてもらうことにします

cd /usr/local/src/
cp /media/Fedora/article/toku3/lame-3.98.4.tar.gz .
tar xzvf lame-3.98.4.tar.gz
cd lame-3.98.4
./configure
make
make install

これで、必要なファイルの準備完了です

mkdir -p build--ffmpeg
cd build--ffmpeg
で、作業ディレクトリ作成


次に configure をオプションつきで実行
../ffmpeg-0.6.1/configure --enable-shared --disable-static --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-avfilter --enable-avfilter-lavf --enable-pthreads --enable-x11grab --enable-vdpau --enable-libmp3lame

あとは、いつもどおりに
make
make install

必要なファイルが参照できない問題を解決するため

vi /etc/ld.so.conf
でファイルを開き、
2行目に
/usr/local/lib
を追記


ldconfig -v
でキャッシュを更新すると、ようやく設定完了

cd /usr/local/bin/
./ffmpeg -version

でエラーがでないなら成功です

ちなみに、趣旨からは外れますが、ubuntu の場合、
synaptics を使い、インストール可能のようです

使い方などは
ffmpeg 使い方
に載っています

スポンサーサイト



テーマ : Linux
ジャンル : コンピュータ

fedora 14 で ffmpeg をソースから その5

さて、今回、あらたに問題が発生しています

それは、必要なファイルが参照できないということです

find / -name libavdevice.so.52
で探すと、
/usr/local/lib/libavdevice.so.52
/usr/local/src/build--ffmpeg-3/libavdevice/libavdevice.so.52
とでてきます

これを解決するには
Fedora14 がライブラリのヘッダーファイルを参照する
ディレクトリが記載されているファイルを
cat /etc/ld.so.conf
で調べます

include ld.so.conf.d/*.conf
/usr/local/lib
と表示されるので

cd /etc/ld.so.conf.d
cat *.conf

で内容を確認すると、
/usr/local/lib
より下が参照できない状態なので

vi /etc/ld.so.conf
でファイルを開き、
2行目に
/usr/local/lib
を追記します

あとは
ldconfig -v
でキャッシュを更新すると、ようやく設定完了です

cd /usr/local/bin/
./ffmpeg -version

でようやくまともに動きました

ソースからインストールするのはかなり面倒でしたが
やってみると楽しいものです

テーマ : Linux
ジャンル : コンピュータ

fedora 14 で ffmpeg をソースから その4

今回も、フリーソフトの編集のつづきです

参考資料は



さて、今回足りないソースを入手したいのですが、残念ながらFedora14
の場合、yum でインストールできません
(まだパッケージ化されていないようです)

仕方ないので、
ソースからいれます

ちなみに、さきに必要なソースをいれてから
コンパイルしないとだめです

つまり、
1、必要なソースをコンパイル
2、ffmpeg をオプションつけてコンパイル

ということになります

この必要なソースファイルも、付録としてついているので、
そのまま使わせてもらうことにします

cd /usr/local/src/
cp /media/Fedora/article/toku3/lame-3.98.4.tar.gz .
tar xzvf lame-3.98.4.tar.gz
cd lame-3.98.4
./configure
make
make install

これで、コンパイル & インストール完了です

確認のため
find . -name lame.h
を実行すると、
./include/lame/lame.h
./src/lame-3.98.4/include/lame.h
がでてくるので、成功です

find コマンドに関しては
UNIXコマンド辞典 > ファイルとディレクトリの操作 > find
が参考になります

私なりの解釈ですと
find 調べるディレクトリ オプション 探すファイル
というかんじです


ちなみに、
. はカレントディレクトリ
.. は親ディレクトリを意味します

詳しくは
参考サイトにリンクのあった
絶対パスと相対パス
をみてもらえば、より詳しい説明が見られます

ここまでおこなったらようやくコンパイル開始です

まずは実験用ディレクトリ作成します
cd /usr/local/src/
mkdir -p build--ffmpeg-3
cd build--ffmpeg-3/

次に configure をオプションつきで実行
../ffmpeg-0.6.1/configure --enable-shared --disable-static --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-avfilter --enable-avfilter-lavf --enable-pthreads --enable-x11grab --enable-vdpau --enable-libmp3lame

あとは、いつもどおりに
make
make install
でインストールされますが、まだ設定が必要になります

テーマ : Linux
ジャンル : コンピュータ

fedora 14 で ffmpeg をソースから その3

オプションなしでは、MP3が有効にはなりませんでした

こういった場合、大抵は INSTALL ファイルに対処が載っています

less ../ffmpeg-0.6.1/INSTALL
で内容を確認すると

../ffmpeg-0.6.1/configure --help
で見れるとのことなので、

../ffmpeg-0.6.1/configure --help | less
で調べると

--enable-libmp3lame enable MP3 encoding via libmp3lame [no]
となっています

この一番右端の [no] は、
configure を実行するときに、オプションなしで実行すると
無効にする
という意味です

このため、オプションなしで実行した場合、MP3変換ができなかったということです

ちなみに、configure のときにオプションをつければOK?
と思いたいのですが、残念ながら必要なソフトが入っていないと
エラーになります

今回、新たにディレクトリを作成し、以下のように実行したのですが
必要なファイルがないのでエラーとなりました
cd /usr/local/src
mkdir -p build--ffmpeg-2
cd build--ffmpeg-2/
../ffmpeg-0.6.1/configure --enable-libmp3lame | tee ff-config.log

この場合、必要とされているファイルを
パッケージ、もしくはソースから入れる必要があります

テーマ : Linux
ジャンル : コンピュータ

fedora 14 で ffmpeg をソースから その2

さて、今回は、解凍した続きからになります

たいていのフリーソフトでは、
中に README ファイルがあります
説明書みたいなものです

これと重要なのが INSTALL ファイル
これは読んで字のごとく、インストール方法です

ファイルの一覧をみるには
ls -F
と行うと、ファイルの一覧を見れます

今回なら
ls -F /usr/local/src/ffmpeg-0.6.1
です

コマンドで説明書をみるときには、cat コマンドより
less コマンドを使います
ページで管理できるし。読み終わったら qを押せば終了なので
便利です
詳しい情報については、「less コマンド」で
ぐぐればでると思われます
おすすめなのは
UNIX入門 > Linuxコマンド一覧 > less
とか
less(1)コマンドの便利な使い方10
などなど探すといろいろでてきます

実際にファイルを開いてみるとわかるのですが
大抵の場合、内容は英語で記述されています

とはいっても、難しく考えることはありません
いまは便利なもので、google 翻訳などをつかったり、ある程度は掲示板できくことでも
対処できると思います
(掲示板で書くときには、ある程度自分で調べたあとのほうがいいと思います)
google 翻訳はこちら
掲示板に関しては、
ubuntu 日本語フォーラム

fedora user forum
などもありますので、こういったところで聞いてみるのもよいでしょう

コマンド操作に関してはある程度の慣れが必要です
キーボードの打ち込む速度のように、使っているとなれてきますので
英語やコマンドもなるべく使っておくと、自然に使えるようになってきます

さて、話を元に戻します

英語マニュアルによれば、新規にディレクトリをつくって実験みたいなかんじで
書いてあるので
cd ..
mkdir -p build--ffmpeg-1
cd build--ffmpeg-1/
と作成しておきます

cd ..
は、1うえのディレクトリに移動です
これを使うと、移動が楽です

ここまでいったら
../ffmpeg-0.6.1/configure | tee ff-config.log
を実行し、まずはオプションなしで実験します

teeコマンドは、標準出力とファイルの両方に出力する
コマンドです

解説についてはUNIXコマンド辞典
に載っています

今回、参考にした雑誌、日経Linux によれば
フリーソフトのコンパイルのときのポイントは2つあり、
1、まずはオプションなしで実行
2、confiture のときに tee コマンドを使ってログを書いておくこと


ということだそうです

このあたりの詳しい説明は

に載っています

ここまでの実験でできたログファイルをみると
オプションなしなので、mp3 が使えない状態になっています

テーマ : Linux
ジャンル : コンピュータ

最新記事
検索フォーム
GREEハコニワ攻略サイト
リンク
カテゴリ
月別アーカイブ
フリーエリア
最新記事
FXプライムレート
最新コメント
最新トラックバック