本文編譯於2019-07-31,下載當下最新版本的安裝包。
一、下載
1.1 msys2下載
安裝包:msys2-x86_64-20190524.exe(當前最新的)
1.2 x265下載
下載地址:http://ftp.videolan.org/pub/videolan/x265/
安裝包:x265_3.1.1.tar.gz(當前最新的)
1.3 ffmpeg下載
下載地址:http://ffmpeg.org/download.html#releases
安裝包:ffmpeg-3.3.9.tar.gz(生產使用)
二、安裝
2.1 msys2安裝
注意:
1. msys2不可以安裝在FAT*分區
2. msys2不能安裝在winXP系統上
1. 雙擊msys2-x86_64-20190524.exe,並點擊下一步
選擇安裝文件夾。
注意:安裝文件路徑要短,不能有空格,只能用ASCII字符,不能用單引號。
然後下一步
直到開始安裝
注意:此處不要勾選"立即運行 MSYS2 64bit",因爲接下來要配置國內更新源。
3. 配置國內更新源
這裏選用中科大的源,也可以搜索其他的源,如阿里雲,清華大學等的源。
修改“安裝位置\etc\pacman.d”中的三個配置文件
mirrorlist.msys
mirrorlist.mingw32
mirrorlist.mingw64
1) 在mirrorlist.msys中添加
Server = http://mirrors.ustc.edu.cn/msys2/msys/$arch/
添加後的文件內容如下:
##
## MSYS2 repository mirrorlist
##
## Primary
## msys2.org
Server = http://mirrors.ustc.edu.cn/msys2/msys/$arch/
Server = http://repo.msys2.org/msys/$arch
Server = https://downloads.sourceforge.net/project/msys2/REPOS/MSYS2/$arch
Server = http://www2.futureware.at/~nickoe/msys2-mirror/msys/$arch/
2)在mirrorlist.mingw32中添加
Server = http://mirrors.ustc.edu.cn/msys2/mingw/i686/
添加後文件內容如下:
##
## 32-bit Mingw-w64 repository mirrorlist
##
## Primary
## msys2.org
Server = http://mirrors.ustc.edu.cn/msys2/mingw/i686/
Server = http://repo.msys2.org/mingw/i686
Server = https://downloads.sourceforge.net/project/msys2/REPOS/MINGW/i686
Server = http://www2.futureware.at/~nickoe/msys2-mirror/mingw/i686
3)在mirrorlist.mingw64中添加
Server = http://mirrors.ustc.edu.cn/msys2/mingw/x86_64/
添加後文件內容如下:
##
## 64-bit Mingw-w64 repository mirrorlist
##
## Primary
## msys2.org
Server = http://mirrors.ustc.edu.cn/msys2/mingw/x86_64/
Server = http://repo.msys2.org/mingw/x86_64
Server = https://downloads.sourceforge.net/project/msys2/REPOS/MINGW/x86_64
Server = http://www2.futureware.at/~nickoe/msys2-mirror/mingw/x86_64
4. 打開菜單中的“MSYS2 MinGW 64-bit”
打開“MSYS2 MinGW 64-bit”,以後也一直使用“MSYS2 MinGW 64-bit”。
打開後執行命令pacman -Syu
更新系統核心和各種包等,如下面的截圖:
輸入“Y”鍵開始更新。
注意: 更新時會遇到下圖的警告,這時一定要點擊右上角的X來關閉窗口。
關閉窗口時會彈出一個對話框(如下圖),點擊OK。
上面的更新沒有結束,需要繼續更新。再次打開“MSYS2 MinGW 64-bit”,再執行一次pacman -Syu
這樣更新就可以順利結束了,msys2的安裝也順利結束了。
5. 安裝編譯環境
安裝msys2是爲了寫程序、編譯程序,因此編譯環境的安裝還是必要的。
1) 安裝基本工具
命令:pacman -S base-devel(默認全部安裝)
$ pacman -S base-devel
:: 在組 base-devel 中有 56 成員:
:: 軟件倉庫 msys
1) asciidoc 2) autoconf 3) autoconf2.13 4) autogen 5) automake-wrapper 6) automake1.10 7) automake1.11
8) automake1.12 9) automake1.13 10) automake1.14 11) automake1.15 12) automake1.16 13) automake1.6
14) automake1.7 15) automake1.8 16) automake1.9 17) bison 18) diffstat 19) diffutils 20) dos2unix 21) file
22) flex 23) gawk 24) gdb 25) gettext 26) gettext-devel 27) gperf 28) grep 29) groff 30) help2man
31) intltool 32) lemon 33) libtool 34) libunrar 35) libunrar-devel 36) m4 37) make 38) man-db 39) pacman
40) pactoys-git 41) patch 42) patchutils 43) perl 44) pkg-config 45) pkgfile 46) quilt 47) rcs 48) scons
49) sed 50) swig 51) texinfo 52) texinfo-tex 53) ttyrec 54) unrar 55) wget 56) xmlto
輸入某個選擇 ( 默認=全部選定 ):
2)安裝編譯工具,包括gcc,make等。
命令:pacman -S mingw-w64-x86_64-toolchain(默認全部安裝)
$ pacman -S mingw-w64-x86_64-toolchain
:: 在組 mingw-w64-x86_64-toolchain 中有 17 成員:
:: 軟件倉庫 mingw64
1) mingw-w64-x86_64-binutils 2) mingw-w64-x86_64-crt-git 3) mingw-w64-x86_64-gcc 4) mingw-w64-x86_64-gcc-ada
5) mingw-w64-x86_64-gcc-fortran 6) mingw-w64-x86_64-gcc-libgfortran 7) mingw-w64-x86_64-gcc-libs
8) mingw-w64-x86_64-gcc-objc 9) mingw-w64-x86_64-gdb 10) mingw-w64-x86_64-headers-git
11) mingw-w64-x86_64-libmangle-git 12) mingw-w64-x86_64-libwinpthread-git 13) mingw-w64-x86_64-make
14) mingw-w64-x86_64-pkg-config 15) mingw-w64-x86_64-tools-git 16) mingw-w64-x86_64-winpthreads-git
17) mingw-w64-x86_64-winstorecompat-git
輸入某個選擇 ( 默認=全部選定 ):
注意:如果想要編譯的程序在windows環境下運行,記得要靜態編譯
3)安裝其他依賴庫
彙編
pacman -S yasm
pacman -S nasm
安裝cmkae
pacman -S mingw-w64-x86_64-cmake
如需編譯ffplayer,還需安裝SDL
pacman -S mingw-w64-x86_64-SDL2
或許要裝,沒對比過
pacman -S mingw-w64-x86_64-SDL2_gfx mingw-w64-x86_64-SDL2_image mingw-w64-x86_64-SDL2_mixer mingw-w64-x86_64-SDL2_net mingw-w64-x86_64-SDL2_ttf mingw-w64-x86_64-SDL_gfx
2.2 x265安裝
1. 解壓
把安裝包“x265_3.1.1.tar.gz”拷貝到“安裝位置\home\用戶\”路徑下。
在打開的“MSYS2 MinGW 64-bit”窗口操作。
cd ~
tar xvf x265_3.1.1.tar.gz
mv x265_3.1.1 x265
2. 配置
cd x265/build/msys/
修改make-Makefiles.sh,添加安裝路徑-DCMAKE_INSTALL_PREFIX=/usr/local。添加後內容如下:
#!/bin/sh
# Run this from within an MSYS bash shell
cmake -G "MSYS Makefiles" -DCMAKE_INSTALL_PREFIX=/usr/local ../../source && cmake-gui ../../source
執行配置
$ ./make-Makefiles.sh
3. 編譯與安裝
make
make install
2.3 ffmpeg安裝
1. 解壓
把安裝包“ffmpeg-3.3.2.tar.bz2”拷貝到“安裝位置\home\用戶\”路徑下。
在打開的“MSYS2 MinGW 64-bit”窗口操作。
cd ~
tar xvf ffmpeg-3.3.2.tar.bz2
2. 配置
export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig":$PKG_CONFIG_PATH
cd ffmpeg-3.3.2
./configure --enable-gpl --enable-libx265 --enable-shared
configure配置大概需要10分鐘,耐心等待。
3. 編譯與安裝
make
make install
make編譯大概需要20分鐘,耐心等待。
如當前計算機是多核(數量爲:n),可以採用make -jn(如:make -j4),可以快一些。
三、驗證
3.1 x265驗證
$ which x265
/usr/local/bin/x265
$ x265 --version
x265 [info]: HEVC encoder version 3.1+5-9c5c9cef2a86
x265 [info]: build info [Windows][GCC 9.1.0][64 bit] 8bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast LZCNT SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
3.2 ffmpeg驗證
$ which ffmpeg
/usr/local/bin/ffmpeg
$ ffmpeg -version
ffmpeg version 3.3.2 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 9.1.0 (Rev3, Built by MSYS2 project)
configuration: --enable-gpl --enable-libx265 --enable-shared
libavutil 55. 58.100 / 55. 58.100
libavcodec 57. 89.100 / 57. 89.100
libavformat 57. 71.100 / 57. 71.100
libavdevice 57. 6.100 / 57. 6.100
libavfilter 6. 82.100 / 6. 82.100
libswscale 4. 6.100 / 4. 6.100
libswresample 2. 7.100 / 2. 7.100
libpostproc 54. 5.100 / 54. 5.100
參考:
https://blog.csdn.net/engineer520/article/details/82192776