最近尝试在windows系统下,交叉编译了x264源码。参考了一些网友们的经验。由于工具一直在变,网上的教程大部分比较老了,所以把我踩过的坑写下来,回馈网友们的帮助。
1. 为什么要交叉编译
x264用的c语言是c99版本的,然而VS对C99语法的支持并不好,所以没有办法直接用VS编译。x264官方代码从2009年开始放弃了支持VS。
但是可以用交叉编译工具,生成windows系统能用的exe,和VS能用的动态库。
步骤如下:
2.1 下载交叉编译工具 mingw+msys
https://sourceforge.net/projects/mingw/files/latest/download?source=files
下载后安装。
安装后会有一个 MinGW Installation Manager程序,用这个程序安装Basic Setup下的mingw-developer-toolkit、mingw32-base、mingw32-gcc-g++、msys-base工具集。
2.2 安装nasm
X264 自从2015年以后,默认的汇编器从 yasm 改成了nasm, 下一步需要下载nasm.exe
找到MinGW的安装目录,把下载后的nasm.exe 放在MinGW\bin 目录下
2.3 下载最新的x264