全网最详细msys2编译libx264库

一、下载安装msys2

首先我们在http://msys2.github.io/ 下载msys2。进入该网址后,可以看到如下页面:

这里由于博主的电脑是win10、64位操作系统,所以选择msys2-x86_64-20190524.exe。下载下来后双击安装。这里博主安装到D盘,因为我们安装完msys2后是要在里面安装其它的软件的,随着里面安装的软件越来越多,msys2在电脑中占用的空间会越来越大,所以不推荐安装在C盘(系统盘)。

 

安装过程中,我们可能会发现,进度会一直卡在中间,无法继续执行,然后“隐藏详细信息”这里显示“Updating trust database”,如下图所示。当遇到这个问题时,我们只要点击右下方的“取消”按钮,然后重新安装即可。

 

 

 

安装完成后,我们进入安装目录,打开msys2_shell.cmd

在弹出的窗口上右击, 选择Options,按照如下设置更改字符集,如下图所示,否则可能会出现中文乱码的问题。更改完成后,点击“Save按钮”,这里要注意更改完成后得要重新启动msys2_shell.cmd,设置才能生效。

 

 

 

二、MSYS2更换国内源

参见《MSYS2更换国内源

 

三、在msys2中安装软件(启动msys2_shell.cmd)

  1. 安装yasm

重启msys2_shell.cmd后,我们在弹出的窗口中执行命令:

命令

pacman -S make yasm diffutils pkg-config

2.2. gcc

Windows: 

pacman -S mingw-w64-x86_64-gcc

Linux:

pacman -S mingw-w64-i686-gcc

如果报错:“错误:无法从 XXX: Operation too slow. Less than 1 bytes/sec......”,我们只要再重新执行上述命令安装就可以了。在每一次重新安装gcc的过程中,下图所示的“下载大小”的值都会变小,所以我们在安装gcc失败后,多次重复安装,让“下载大小”的值越来越小,最终我们就能成功安装的。

 

安装完gcc后,我们可执行命令:pacman -Sl | grep "gcc"查看gcc是否安装完成

 

 3. 安装nasm

命令

pacman -S nasm

 

四、下载libx264源码,解压缩

 

https://www.videolan.org/developers/x264.html

 

官方网站

https://www.videolan.org/developers/x264.html

 

五、编译libx264源码(编译出32位库)-64位库同

1.通过命令提示符进入msys2的安装目录即msys64下, 执行命令: msys2_shell.cmd -mingw32

 

2.在启动的窗口中执行命令:cd /C:\x264,进入x264源码的目录,如下图所示:

 

运行configure命令

./configure --disable-cli --enable-shared --extra-ldflags=-Wl,--output-def=libx264.def

第二步编译

make

  生成dll文件

3.生成lib静态库(32位静态库选 x86、64位静态库选x64)

使用VC自带的lib生成工具“LIB”,生成“libx264.lib”文件。使用“Visual Studio command prompt”,切换至x264源代码目录,输入以下命令

 

 

LIB /DEF:libx264.def       /machine:x64 (指定机器为x86、x64可不填此参数)

 

 

4.制作3rd库

新建lib264文件夹,拷贝libx264-158.dll 到文件夹下,并命名为libx264.dll 新建include和lib目录,分别将x264.h、x264_config.h拷贝到include目录,libx264.lib拷贝到lib目录下

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值