您的位置:首页 > 其它

Windows下编译x264(一点经验教训)

2015-07-30 11:02 253 查看
我编译x264比较波折,这里记录、分享出来,希望能为新入门的朋友以帮助。

编译的过程就不多做叙述了,基本参考下面的文章,在此对分享者表示感谢:

/article/8125629.html

我的教训是,由于第一次编译,于是百度,发现需要msys,于是下载msys然后各种尝试、各种整合,下载各种插件、各种工具,各种不行。

再后来知道有替代的mingw,然后下载、安装,又是各种整合尝试。还是不行。

再后来无奈了,就卸载、删掉了全部的msys、mingw,这回直接使用mingw,用它的配置管理器把所有msys的工具都安装了。再试,不报错了。就是提示缺少stdint.h文件,于是我把代码中的该文件cp到/include目录,configure,make,竟然通过。太兴奋了。

折腾了一天多,得到一个教训,尽量搜集完整的、经他人整理整合过的资料进行参考,零散的、片段化的资料,总是会带给你意想不到的“惊异”!

另外,需要什么工具啥的,最好去官网下载,而不是搜索什么网站下载。

关于libx264.dll 和 libx264.lib

要想生成windows的动态库和静态引导库,需要在configure时做一下配置,使用如下命令:

./configure –enable-shared

之后make编译,这样,会生成三个文件:

libx264.a:这个是linux的静态库。

libx264.dll.a:将文件名字修改为libx264.lib,它是dll文件的引导lib。修改完名字之后在VC工程中就可以作为“附加依赖项”了。

libx264-148.dll:dll文件,其中148是版本,不要修改或去掉。

在VC工程使用 .lib 和 .dll ,会提示缺少 libgcc_s_dw2-1.dll, pthreadGC2.dll 等,从mingw搜索拷贝过去就行了。

附简单的测试代码

#include <iostream>
#include <string>
#include "stdint.h"
extern "C"
{
#include "x264.h"
#include "x264_config.h"
};
using namespace std;
int main()
{
x264_param_t param;
x264_param_default(¶m);
getchar();
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: