This repository has been archived by the owner on Feb 22, 2021. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathBuild.txt
96 lines (74 loc) · 3.57 KB
/
Build.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
Build environment for Win10 64bit:
1. Download msys2-x86_64-xxx.exe from http://www.msys2.org/
2. intall msys2 to default path C:\msys64\
3. Run MSYS2 w64
4. execute pacman -Syu (confirm with "y" on prompt)
5, when prompted terminate shell and re-run MSYS2 w64
6. Execute pacman -Su (confirm with "y" on prompt)
7. Run (confirm with "y" on prompts)
pacman -S make
pacman -S diffutils
pacman -S yasm
pacman -S mingw-w64-x86_64-gcc
pacman -S mingw-w64-i686-gcc
pacman -S mingw-w64-i686-gdb
pacman -S mingw-w64-x86_64-gdb
pacman -S mingw-w64-x86_64-gtk3
pacman -S mingw-w64-i686-gtk3
9. Download http://ftp.gnome.org/pub/gnome/binaries/win64/dependencies/pkg-config_0.23-2_win64.zip
10. Unzip and copy pkg-config.exe to C:\msys64\mingw64\bin
11. Download http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/pkg-config_0.26-1_win32.zip
12. Unzip and copy pkg-config.exe to C:\msys64\mingw32\bin
11. Copy libintl-8.dll to intl.dll
cd C:\msys64\bin
cp libintl-8.dll intl.dll
12. in C:\msys64\mingw64\x86_64-w64-mingw32\lib rename libpthread.dll.a libwinpthread.dll.a,
13. In C:\msys64\mingw64\lib rename libbz2.dll.a libz.dll.a libiconv.dll.a liblzma.dll.a optionally libSDL.dll.a
14. in C:\msys64\mingw32\i686-w64-mingw32\lib rename libpthread.dll.a libwinpthread.dll.a,
15. In C:\msys64\mingw32\lib rename libbz2.dll.a libz.dll.a libiconv.dll.a liblzma.dll.a optionally libSDL.dll.a
Getting source code:
1. In this directory:
git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg
2. example of full path would be e:/dev/ffmpeg
Optional to include x264 encoder:
1. download nasm for 32 bit: http://www.nasm.us/pub/nasm/releasebuilds/2.13.01/win32/nasm-2.13.01-win32.zip
2. unzip can copy nasm.exe into C:\msys64\mingw32\bin
3. download nasm for 64 bit: http://www.nasm.us/pub/nasm/releasebuilds/2.13.01/win64/nasm-2.13.01-win64.zip
4. unzip can copy nasm.exe into C:\msys64\mingw64\bin
5. download latest x264 from here: https://www.videolan.org/developers/x264.html and put it into /e/dev/ffmpeg as /e/dev/ffmpeg/x264
6. make build_x264=true in ffmpeg-build-win.sh
7. set add_x264=true in ffmpeg-build-win.sh
8. after first build can change build_x264=false to avoid x264 rebuild
Optional to include x265 encoder:
1. download latest x265 from here: https://www.videolan.org/developers/x265.html and put it into /e/dev/ffmpeg as /e/dev/ffmpeg/x265
2. install cmake 2.8.11 or later
3. run E:\dev\ffmpeg\x265\build\vc12-x86_64\make-solutions.bat
4. in cmake dialog point to C:\msys64\usr\bin\yasm.exe
5. in cmake dialog check ENABLE_ASSEMBLY
6. Click "Confugure" then "Generate" buttons
7. Exit the dialog: x265.sln should be generated.
8. Open x265.sln, select RelWithDebInfo configuration and build x265-shared project with dependencies.
9. repeat 3-7 for E:\dev\ffmpeg\x265\build\vc12-x86\make-solutions.bat
10. set add_x265=true in ffmpeg-build-win.sh
Build 64
1. Run E:\msys64\msys2_shell.cmd -mingw64
2. cd /e/dev/ffmpeg
3. ./ffmpeg-build-win.sh release 64
Build 32
1. Run E:\msys64\msys2_shell.cmd -mingw32
2. cd /e/dev/ffmpeg
3. ./ffmpeg-build-win.sh release 32
Build 64 with VC++
1. Run 64 bit VC env variable command prompt
2. Navigate to E:\msys64
3. Run C:\msys64\msys2_shell.cmd -mingw64 -use-full-path
4. Navigate to cd /e/dev/ffmpeg
5. Run ./ffmpeg-build-win.sh release 64 msvc
Build 32 with VC++
1. Run 32 bit VC env variable command prompt
2. Navigate to E:\msys64
3. Run C:\msys64\msys2_shell.cmd -mingw32 -use-full-path
4. Navigate to cd /e/dev/ffmpeg
5. Run ./ffmpeg-build-win.sh release 32 msvc
use "full" as a last parameter for full re-builds - default
use "inc" as a last parameter for incremental builds