安裝環境windows 7 32bit
需下載文件
ffmpeg-2.0.tar.bz2
mingw-get-inst-20120426.exe
SDL-devel-1.2.15-mingw32.tar.gz
yasm-1.2.0-win32.exe
pkg-config_0.26-1_win32
glib_2.18.4-1_win32
1. 下載MinGW((Minimalist GNU on Windows),新版已包含msys1.0,所以不需額外下載msys
2. 下載ffmpeg
3. 下載\yasm,官網下載http://yasm.tortall.net/Download.html,在Latest Release版本直接下載Win32 .exe (for general use on 32-bit Windows)
4. 下載SDL
5. 下載pkg-config
安裝步驟:
1. 安裝MinGW
安裝過程把所有選項勾選,預設是安裝在C:\MinGW,新版同時安裝了msys,裝好會有C:\MinGW\msys\1.0的資料夾
2. 整合MinGW和msys
將位於C:\MinGW\msys\1.0\etc下的fstab用UltraEdit或是NotePad++開啟
修改為C:/MinGW /mingw,即MinGW安裝路徑
3. 安裝yasm
將下載的yasm-1.2.0-win32.exe重新命名為yasm.exe,並放到C:/MinGW/bin/下
有另一作法為放到C:\Windows\System32下
這點還沒證實差別在哪
4. 安裝pkg-config
解壓縮下載的pkg-config_0.26-1_win32.zip,將bin資料夾下的pkg-config.exe複製到
C:\MinGW\bin下
5. 安裝glib
解壓縮glib_2.18.4-1_win32,將bin資料夾下的libglib-2.0-0.dll複製到C:\MinGW\bin下
6. 安裝SDL
解壓縮SDL-devel-1.2.15-mingw32.tar.gz,將資料夾下的bin、include、lib複製到C:\MinGW下相對應的bin、include、lib資料夾
然後使用UltraEdit或NotePad++打開bin資料夾內的sdl-config檔案
把prefix=/usr/*******改成prefix=c:/mingw
7. 編譯ffmpeg
解壓縮ffmpeg-2.0.tar.bz2,放到自己知道的路徑,我是直接放到C:\路徑下,打開MinGW切換到C:\ffmpeg-2.0輸入指令
$ cd c:
$ cd ffmpeg-2.0
$ ./configure --enable-yasm --disable-static --enable-shared --enable-gpl --enable-libx264 --enable-ffplay --enable-pthreads --prefix=/ffmpeg
$ make
如果編譯失敗先執行make distclean或是make clean,之後修正錯誤後再重新編譯
$ make install
編譯完會在C:\MinGW\msys\1.0下產生ffmpeg的資料夾
錯誤處理:
1.
libavutil/atomic.c:101:2: Fehler: #error "Threading is enabled, but there is no implementation of atomic operations available"
common.mak:48: recipe for target 'libavutil/atomic.o' failed
make: *** [libavutil/atomic.o] Error 1
會有此錯誤是因為必須指定可使用的cpu下限
$ ./configure --cpu=corei686-avx
...
$ grep W32THREADS config.h
#define HAVE_W32THREADS 1
$ make libavutil/atomic.o
CC libavutil/atomic.o
$
2. 使用.exe檔發生錯誤,缺少.dll,在此部分上網google下載,然後放到C:\Windows\System32
沒有留言:
張貼留言