= Windowsでの!HandBrakeのビルド方法 = このページでは、Windowsで!HandBrakeをビルドする方法を解説している。基本的には本家Wikiページの[http://trac.handbrake.fr/wiki/CompileOnWindows CompileOnWindows]に準じているが、一部本プロジェクトで確認したものに変更している。 == ビルドに必要な環境 == * cygwin (http://www.cygwin.com/ ) * Visual C# 2008 Express Edition(http://www.microsoft.com/japan/msdn/vstudio/express/ ) * NSIS(Nullsoft Scriptable Install System)(インストーラ作成に必要。http://nsis.sourceforge.net/Main_Page ) * [http://sourceforge.jp/projects/sfnet_nsis/ sf.jp内ミラー] === cygwinの環境設定 cygwinで下記のツールをインストールしておく。 * autoconf * automake * binutils * bison * byacc * bzip2 * cygutils * diffutils * gcc * gcc-core * gcc-g++ * libbz2-devel * libtool * make * nasm * patchutils * patch * perl * subversion * unzip * wget * zip また、本家解説ではgmpとmpfr、gcc4を自前でコンパイルしているが、これらもcygwinでインストール可能なのでcygwinでインストールする(gcc4は無くてもコンパイルできるかも)。 === Visual C# 2008 Express Editonの環境設定 GUIのコンパイルに必要。MSのサイトからダウンロード→適当にセットアップ。特に設定は不要。 == コンパイルに必要なそのほかのツールの導入 * Yasm (http://www.tortall.net/projects/yasm/wiki/Download) * Jam (ftp://ftp.perforce.com/jam/) それぞれ最新版をダウンロード・展開して {{{ $ ./configure $ make $ make install }}} でインストール可能。 == ライブラリ/コマンドライン版のコンパイル !HandBrakeのトップディレクトリで {{{ $ make }}} を実行。途中で「jamが実行できない!」との旨が表示されて止まるので、今度はcontribディレクトリで先にインストールしたjamを実行。 {{{ $ cd contrib $ jam }}} これで必要なライブラリがビルドされる。時間がかかるので注意。完了したら再度HandBrakeのトップディレクトリで {{{ $ make }}} を実行。!HandBrakeCLI.exeがビルドされる。!HandBrakeCLI.exeの実行にはcygwinのランタイムが必要なので注意。 ビルドに失敗する場合、PATH環境変数などの関係でcygwinではなくVisual C#/C++のツールが呼び出されている可能性があるので要確認。 == Windows版GUIのビルド VC#でwin/c#/HandBrakeCSを開いてビルド。GUI版exeファイルと同一のディレクトリに!HandBrakeCLI.exeが存在する必要あり。また、当然ながら実行には.NET Framework 2.0のランタイムが必要。 === version 0.9.5以降での注意点 0.9.5からはプロジェクトファイルを開くために[http://stylecop.codeplex.com/ StyleCop]が必要となりました。Visual Studio 2010(含むExpress)の場合、4.4.0RTW以上をダウンロードしてインストールしておく必要があります。また、ビルドの際に[http://subversion.apache.org/ Subversion]も必要となります(コンパイル時にsubwcrevコマンドを呼び出しているため)。 == インストーラの作成 C:\Dev\HandBrake\handbrake-jp\win\C#\Installer\Installer.nsiを編集、NSISでコンパイルする。Installer.nsiの文字コードはCP932である点に注意。 1. win\C#\Installerディレクトリに「handbrakepineapple.ico」をコピー 2. win\C#\Installerディレクトリにビルドして生成されたファイル一式とHandbrakeCLI.exe一式をコピー 3. Installer.nsiをコンパイルする 圧縮には「solid LZMA」がもっともファイルサイズが小さくなる模様。