2007年07月21日

x264のコンパイル&インストール (旧rev.)

2008/08/16 追記
最新版に合わせて記事を修正しましたので、こちらの記事をどうぞ。

2008/03/30 追記
2008/03/30現在、最新版はrev.805です。
svnの方のソースはrev.745で更新が止まっており、現在はgitでのソース管理になりました。
詳細は後日書く予定です。

daily tarballは更新されていますので、とりあえずx264の最新版をコンパイルしてみたいという方は、そちらをどうぞ。

NASMYasmを、あらかじめインストールしておきます。

x264は、以下の場所にあります。
http://www.videolan.org/developers/x264.html

2008/03/03 追記
最新版はrev.745です。(svn最終版)

TortoiseSVN、または、svnがインストールされていれば、以下のようにして、ソースファイルを拾ってこれます。
$ svn co svn://svn.videolan.org/x264/trunk x264

svnがインストールされていない場合でも、とりあえず、daily tarballのソースファイルを拾ってくればコンパイルできます。

ftp://ftp.videolan.org/pub/videolan/x264/snapshots/
x264-snapshot-20070720-2245.tar.bz2を、適当なディレクトリに保存します。
毎日更新されていて、日付がファイル名になっていますので、その時点でのファイル名に読み替えてください。

2007/08/18 追記
libpthread.aをstaticライブラリにしたら、エラーが出てまともに動きませんでした。
libpthread.aを元に戻したので、configureの修正も不要です。

2007/10/01 追記
libpthread.aをstaticライブラリにした時の解決方法がありました。
元ネタは、ココです。

MSYSで、ファイルを保存したディレクトリに移動し、
$ tar xjf x264-snapshot-20070720-2245.tar.bz2
$ cd x264-snapshot-20070720-2245

2007/7/30追記
libpthread.aをstaticライブラリにしたので、configureを修正します。
333、335行目の、-lpthreadGC2を、-lpthreadに変更します。

修正前)
elif cc_check pthread.h "-lpthreadGC2 -lwsock32 -DPTW32_STATIC_LIB" "pthread_create(0,0,0,0);" ; then
pthread="yes"
libpthread="-lpthreadGC2 -lwsock32"
CFLAGS="$CFLAGS -DPTW32_STATIC_LIB"

修正後)
elif cc_check pthread.h "-lpthread -lwsock32 -DPTW32_STATIC_LIB" "pthread_create(0,0,0,0);" ; then
pthread="yes"
libpthread="-lpthread -lwsock32"
CFLAGS="$CFLAGS -DPTW32_STATIC_LIB"

次に、encoder/encoder.cを修正します。
パッチファイルx264-PTW32_STATIC_LIB.diffをダウンロードして、以下のコマンドを実行。
$ patch -p0 < x264-PTW32_STATIC_LIB.diff

gcc4でコンパイルする場合は、こちらの修正も必要です。

修正が終わったら、
$ ./configure --prefix=/mingw
$ make
$ make install

以上で終了です。

Cygwinでx264をコンパイルするとき、pthreadを有効にするには、configureの125、126行目の、-mno-cygwinを削除してください。
修正前)
CFLAGS="$CFLAGS -mno-cygwin"
LDFLAGS="$LDFLAGS -mno-cygwin"
修正後)
CFLAGS="$CFLAGS"
LDFLAGS="$LDFLAGS"


【更新履歴】を見る
posted by あべちん at 20:52 | Comment(0) | TrackBack(0) | FFmpeg追加ライブラリ
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/4772845
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック