一、安装MSYS2环境

1.首先去MSYS2官网(链接)安装包,我的电脑是64位选择x86_64版本

2.下载后,点击安装,默认就可以

3.根据提示,将会直接打开窗口,如果不小心关闭,则转到安装目录下打开,如下图

4.Update the package database and core system packages with,全部默认安装即可

pacman -Syu

5.更新其他,同样默认执行就可以

pacman -Su

6.分别安装32位版本和64位版本的工具链

pacman -S mingw-w64-i686-gcc
pacman -S mingw-w64-x86_64-gcc

7.安装其他软件及工具

pacman -S base-devel
pacman -S vim
pacman -S nasm
pacman -S git

8.测试是否正常

从开始菜单中找到“MSYS2 MinGW 32-bit”以及“MSYS2 MinGW 64-bit”,执行gcc -v。查看是否能够看到提示信息,如果有提示信息,表示正常

二、x264编译

1.在VLC官网(链接)下载x264源码包

解压到msys64\home目录下:

2.打开MSYS2 MinGW 64-bit,进入到x264源码所在路径:

3.执行命令

 ./configure --host=x86_64-w64-mingw32 --enable-shared --disable-cli

输出如下:

4.执行make

make

输出如下:

编译后,在目录下,可以看到生成了libx264-159.dll

三、将dll转换成lib

1.下载pexports.exe(链接)

2.将下载的pexports.exe放在VC安装目录的bin下

例如:D:/vs2015/VC/bin

3.打开cmd,进入当前的目录:

cd D:
cd D:\vs2015\VC\bin

4.将libx264-159.dll放在D:\vs2015\VC\bin下

5.执行命令:

(1)先将dll转成def

pexports.exe libx264-159.dll > libx264-159.def

(2)利用def生成lib

lib /machine:x64 /def:libx264-159.def

生成效果:

6.测试库是否正确

(1)创建一个控制台的64位工程,将libx264-159.lib,x264.h,x264_config.h以及libx264-159.dll都放在工程目录下

输入代码:

#include <iostream>
#include <string>
#include "stdint.h"
#pragma comment(lib, "libx264-159.lib")
extern "C"
{
#include "x264.h"
#include "x264_config.h"
};
using namespace std;int main(int argc, char **argv)
{x264_param_t param;x264_param_default(&param);cout << "hello,x264" << endl;return 0;
}

(2)执行结果如下:

好了,正确生成。

windows下编译64位x264相关推荐

  1. windows下编译64位程序时没有没_WIN32定义

    _WIN32定义的初衷是为了区分16位和32位程序,但是目前很多项目的代码都是使用_WIN32来判定是否是windows平台,所以目前在windows平台下编译32位和64位程序时,编译器都会预定义了 ...

  2. windows msys编译64位x264和ffmpeg

    1. 安装msys msys(Minimal GNU system on Windows),是一个小型的GNU环境,包括基本的bash,make等等.与Cygwin差不多吧, 我也没用过cygwin ...

  3. windows 下编译64位的 Boost 1. 61. 0

    一直以来都是在Win32环境下Build和使用boost,但现在基本上每天都在64位Win7下工作,所以很有必要把这几天的经验总结下来. 1. 下载并解压boost 1.61.0 压缩包 2. 解压并 ...

  4. Window下编译 64位ffmpeg 引入libx264及libmp3lame编码库

    好记性不如烂笔头,每次编译总要有些时间折腾,记录下编译过程,方便后来者. 本文 介绍windows下编译64位Ffmpeg库 (版本V4.02)如何引入libx264及libmp3lame(编码mp3 ...

  5. CentOS下编译64位的libpython2.6.so.1.0库

    CentOS下编译64位的libpython2.6.so.1.0库 - Cody的专栏 - 博客频道 - CSDN.NET CentOS下编译64位的libpython2.6.so.1.0库 2011 ...

  6. Windows7_x64下编译64位ffmpeg

    一点心青的文章指导得非常详细,本应是非常顺利的.但我仍然为编译64位ffmpeg耽误了很久,现在总结一下经验教训: 1. 经验:在编译SDL的时候,我直接使用了1.2.5的版本,省去了很多麻烦: 2. ...

  7. gdal1.6linux编译,VS2015下编译64位GDAL总结

    使用VS2015编译最新的64位GDAL(最新gdal2.11),确实有一些问题,看来双方还是太新了,有点不兼容,特总结如下. 以前经常用的通过VisualStudio IDE进行编译的方式现在似乎不 ...

  8. Windows下编译x264

    到官方下载,下载最新源码,配置MSYS2,然后编译: Getting x264 Source The latest x264 source code is available through git  ...

  9. linux cmake 编译64位,cmake编译win下64位obs

    obs是一款开源编码推流工具,简单易用,非常流行. 一次项目中,发现本台式机I3处理器下32位obs推流CPU使用率100%.而使用的第三方设备在64位下,性能较好. 所以需要编译64位obs并且编译 ...

最新文章

  1. 什么样的技术将在后大流行的世界里兴起
  2. php url模式在哪修改,如何在nginx环境中启用php的pathinfo URL模式[修正]
  3. Ubuntu 16.04 命令行 关机 or 重启
  4. 三关节机械臂上的传感器 、执行器与控制板STM32F103连接
  5. 每天学习python 30分钟 -了解python - 看懂#!/usr/bin/python
  6. AFNetworking 3.1.0 使用中某些知识点讲解
  7. 面向对象编程思想-观察者模式
  8. [剑指offer][JAVA][面试第40题][最小的k个数][快选][堆][BST]
  9. 摩托罗拉为什么要限制自家linux手机,摩托罗拉为何在安卓手机大放异彩的时候,突然开始衰败了呢?...
  10. Hive精华问答 | Hive的数据模型是怎样的?
  11. 随心玩玩(一)易语言 大漠插件 制作脚本从入门到摔门而出(更完)
  12. linux修改文件类型和权限
  13. VsCode建立工程
  14. oCPC实践录 | 好难理解的oCPC成本控制算法(1)
  15. java惊魂_我的世界孤儿院惊魂
  16. 《迷途深渊》隐私声明
  17. 社会兼职工作实践报告
  18. python基础知识有哪些需要背(记住是基础知识)我是初学者
  19. GitHub 各种开源项目
  20. 21天 mysql_java基础第21天_mysql

热门文章

  1. python pywin32 的学习笔记
  2. 华纳云告知您,企业上云的十大优势
  3. 单片机计时器100000秒以内
  4. 关于gvim的高级应用
  5. Elasticsearch与Spring的集成
  6. Spring系列学习之Spring Data Elasticsearch数据访问
  7. 在Win32下使用OpenGL
  8. 叠片过滤器和叠片式过滤器以及盘式过滤器的区别介绍
  9. 2023值得我们关注的10种软件测试趋势
  10. 使用eclipse或者myeclipse时,鼠标变成黑色十字架解决办法