コンパイラ環境
ウィンドウズ10
コンパイルプロセス
msys2をインストール
- ダウンロード: MSYS2
-
インストール: ダウンロードした exe をクリックし、ここでデフォルトのインストール パスを選択します
C:\msys64
。 -
環境変数の構成: ウィンドウの左下にある検索バーで、検索
环境变量
して をクリックします编辑系统环境变量
。C:\msys64
インストール パスをシステム変数 Path に追加します。 -
Windows の検索バーで検索して、
msys2
msys2 のコマンド ライン ウィンドウを開きます。
- 関連するコンパイル ツールをダウンロードします。コマンド ラインで次のように入力します。
pacman -S mingw-w64-x86_64-toolchain
- Notepad++ を使用して、 を開き
C:\msys64\msys2_shell.cmd
、検索しrem set MSYS2_PATH_TYPE=inherit
、削除しますrem
。つまり、次のように変更します。
set MSYS2_PATH_TYPE=inherit
FFmpeg ソースコードをダウンロード
以下C:\source
の git コマンドを実行します。つまり、ソース コードを にダウンロードしますC:\source\ffmpeg
。
git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg
FFmpeg をコンパイル
- Visual Studioをダウンロードしてインストールします。
- Windows の検索バーで検索し
x64 Native Tools
てクリックしますx64 Native Tools Command Prompt For VS 2019
。
- ポップアップで、次のように入力します。
msys2_shell.cmd -mingw64
- ポップアップ mingw64 コマンド ウィンドウで、ffmpeg ソース コード ディレクトリに切り替えます。
cd /c/source/ffmpeg
- 次に、コンパイル コマンドを入力します。
./configure --toolchain=msvc --enable-shared --enable-debug --prefix=../ffmpeg_build --extra-cflags="-I../source/ffmpeg_build/include" --extra-ldflags="-LIBPATH:../source/ffmpeg_buid/lib"
コンパイル コマンドを説明します。
./configure
: 現在のディレクトリ、つまり C:\source\ffmpeg でスクリプト ファイル configure を実行します。構成ファイルを開くと、ffmpeg で一般的に使用されるいくつかのコンパイル コマンドのコメントが表示されます--enable-shared
。--enable-shared
: ダイナミック リンク ライブラリ (dll) にコンパイルします。--enable-debug
: ffmpeg ソース コードのデバッグを許可します。--prefix=../ffmpeg_build
: コンパイル結果の格納パスを指定しますC:\source\ffmpeg_build
。相対パスはここに書かれています。--extra-cflags="-I../source/ffmpeg_build/include"
:cflags
C コンパイラのオプションを示します。-I
ヘッダー ファイルの検索パス リストに dir ディレクトリを追加することを示します。ここでの dir ディレクトリは、C:\source\ffmpeg_build
相対パスとして指定され、相対パスとしても記述されます。--extra-ldflags="-LIBPATH:../source/ffmpeg_buid/lib"
:ldflags
gcc などのコンパイラで使用されるいくつかの最適化パラメータを設定します。また、ライブラリ ファイルの場所を指定することもできます。また、ライブラリ ファイルのディレクトリが後に続く-LIBPATH:
ように省略できます。-L
--prefix
とパス--extra-cflags
の違いについて--extra-ldflags
:
C # C盘
├── msys64 # msys2安装目录,也是msys2_shell.cmd所在的目录
└── source
├── ffmpeg # ffmpeg源码根目录,也是configure脚本文件所在目录
└── ffmpeg_build # 保存ffmpeg源码编译结果的目录
--prefix
ffmpeg の開始ディレクトリは、ソース コードのルート ディレクトリ、つまりC:\source\ffmpeg
. したがって、ffmpeg_build ディレクトリの相対パスは次のとおりです../ffmpeg_build
。
--extra-cflags
、--extra-ldflags
最初のディレクトリは、msys2_shell.cmd が配置されているディレクトリですC:\msys64
。したがって、ffmpeg_build ディレクトリの相対パスは次のとおりです../source/ffmpeg_buid
。
- 構成が完了したら、引き続き次のコマンドを入力して、ソース コード ファイルをバイナリ実行可能ファイルにコンパイルします。
make -j12 && make install
FFmpeg のコンパイルを確認する
- 以下に、
C:\source\ffmpeg_build\bin
生成されたものを示しますffmpeg.exe
。
C:\source\ffmpeg_build\bin
ディレクトリに移動します。入力のffmpeg -version
検証:
ffmpeg.exe
注:現在のディレクトリ、つまり をC:\source\ffmpeg_build\bin
Windows システム環境変数に追加することをお勧めします。これにより、いつでも ffmpeg コマンド ラインを使用できます。
参考文献: