본문 바로가기
멀티미디어/코덱(Codec)

FFmpeg을 직접 컴파일 해보자

by 루이스파파 2017. 4. 3.
728x90
반응형


윈도우에서 FFmpeg을 컴파일하려면 Visual Studio에서 하는 방법과 MinGW의 gcc로 컴파일하는 방법이 있다.

Visual Studio를 사용하는 방법이 쉽다고 되어있는데, 막상 해보니 잘 되지 않고…

윈도우 환경에서 gcc로 컴파일 하려면 MinGWyasm이 필요하다.



1. MinGW 다운 및 설치


MinGW를 설치하려면 여기에서 mingw-get-setup.exe를 다운받아 실행하면 된다.

설치 화면에서 mingw32-basemsys-base를 선택한 뒤에 Installation - Apply Changes를 클릭하면 설치가 진행된다.

설치가 되는 기본 폴더의 위치는 c:\MinGW이다.




2. pr.exe 설치


컴파일할 때 pr.exe가 필요한데, 위에서 설치한 내용에선 이 파일이 빠져있다.

여기에서 다운받아 압축을 푼 뒤에 pr.exe를 c:\MinGW\bin에 복사한다.



3. yasm 다운 및 설치


여기에서 yasm을 다운받는다. win32를 다운받으면 무난히 사용할 수 있다.

다운받은 뒤 파일명을 yasm.exe로 바꾼 뒤에 c:\MinGW\bin에 복사하면 된다.



4. FFmpeg 소스 다운로드 및 컴파일 준비


FFmpeg 소스는 여기서 다운받을 수 있다.

다운받은 뒤에 압축은 c:\MinGW\msys\1.0\home\[계정] 아래에 해제하면 작업이 좀 더 쉽다.



5. unistd.h 수정


c:\MinGW\includeunistd.h가 있다.

여기에 _cdecl가 5번 들어있는데, 이를 모두 __cdecl로 바꿔준다.



6. 컴파일


c:\MinGW\msys\1.0에서 msys.bat를 실행한다.

우선 아래와 같이 입력해서 MinGW 폴더를 마운트한다.


1
mount c:/mingw /mingw


여기서 역슬래쉬(\)가 아니라 슬래쉬(/)임에 유의한다.


그 다음은 소스가 저장된 위치로 이동.

4번에서 설명한 내용대로 했으면 현재 폴더의 아래에 있다.

여기서 아래와 같이 입력하면 컴파일된다. 소요 시간은 대략 30분 안팎.


1
2
3
./configure --target-os=mingw32 --enable-cross-compile --arch=i686 --enable-static
make
make install


이렇게 하면 ffmpeg.exe 등이 만들어진 것을 확인할 수 있다.



참조 사이트: 노녁의 볼우물 #1, #2

 



출처: http://teus.me/308 [TEUS.me]

728x90
반응형