在Windows下利用Eclipse调试FFmpeg
目录[隐藏] |
[编辑]环境与软件
win7 32位
打包下载链接:http://pan.baidu.com/s/1c0deSSg 密码:cp1g
[编辑]第一步:安装MinGW
安装mingw-get-inst-20120426.exe(安装时选中c++编译器和Mingw Developer Toolkit,其它默认)


[编辑]第二步:配置编译环境
将yasm-1.2.0-win32.exe更名为yasm.exe后直接放在 /usr/local/bin(windows路径为C:\MinGW\msys\1.0\local\bin)
将下面3个压缩包里bin目录中的文件解压后放在/usr/local/bin下
glib_2.28.8-1_win32.zip:GLib (Run-time)
gettext-runtime_0.18.1.1-2_win32.zip:gettext-runtime (Run-time)
pkg-config_0.26-1_win32.zip:pkg-config (tool)
配置好后,效果如下:

[编辑]第三步:配置SDL
为了编译出ffplay,还需要配置SDL
下载编译好的SDL库文件SDL-devel-1.2.15-mingw32.rar并解压,
接下来无论是下载的还是自己编译的,都需要修改bin目录下的 sdl-config文件:
把 prefix=/usr/local/cross-tools/i686-w64-mingw32该成: prefix=c:/MinGW
并去掉2处-mwindows
解压后,将bin,include和lib目录下的文件分别拷贝到/usr/local对应目录下(注:直接拷贝include目录下的SDL文件夹),
为了编译时ffmpeg能识别SDL并开启 SDL support,需要将bin,include和lib目录下的文件再拷贝一份到C:\MinGW\的对应目录中。
[编辑]第四步:编译
下一步开始编译,不编译shared版本
注:软件安装时统一加上--prefix=/usr/local
[编辑]编译faac
./configure --prefix="/usr/local"--enable-static--disable-shared --with-mp4v2=no makemakeinstall

[编辑]编译fdk-aac
configure FFmpeg时需要加上--enable-libfdk_aac
./configure --prefix="/usr/local"--disable-sharedmakemakeinstall
[编辑]编译x264
./configure --prefix=/usr/local--enable-static--enable-sharedmakemakeinstall
[编辑]配置ffmpeg
如果未配置SDL,需要添加--disable-ffplay,下面内容可以全部复制后粘贴到命令行中。
PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"LDFLAGS="-L/usr/local/lib"CFLAGS="-I/usr/local/include" ./configure --enable-gpl \ --disable-optimizations--disable-asm--enable-libfaac --enable-libfdk_aac \ --enable-libx264--enable-nonfree--enable-static--disable-shared
去掉-enable-shared --prefix=/usr/local选项,并加上--disable-optimizations --disable-asm选项
不用make
[编辑]第五步:利用eclipse编译ffmpeg
eclipse运行需要先安装JRE;
打开eclipse:
File-New-C project,选择Makefile project下的Empty Project.右侧选Mingw GCC

再拷贝上面configure之后的ffmpeg源码到工程根目录下,F5刷新后选择Project-Build All.

[编辑]第六步:调试FFmpeg
右键Binaries下的ffmpeg_g.exe选择Debug as->Local C/C++ Application,选择gdb/mi

设置调试参数需要先执行一遍上面的操作,然后右击ffmpeg_g.exe选Debug as-> Debug Configuration,
在Arguments选项卡的Program arguments方框里可以输入调试参数。

如果调试时ffmpeg导常终止,不能进入Main函数中,如下图所示:

请将x264动态链接库(C:\MinGW\msys\1.0\local\bin\libx264-129.dll)拷贝到工程根目录下。
再次调试结果如下:

在Windows下利用Eclipse调试FFmpeg的更多相关文章
- 在Ubuntu下利用Eclipse调试FFmpeg《转》
参考原贴,其中编译命令有略微改动. 第一步:准备编译环境 #sudoapt-get update #-dev libspeex-dev libtheora-dev libtool libva-dev ...
- 在Ubuntu下利用Eclipse调试FFmpeg
[编辑]第一步:准备编译环境 .tar.bz2 -2245/ ./configure -linux-i586.tar.gz 解压后得到jre1.7.0_17目录 最后通过java -version检查 ...
- 在CentOS下利用Eclipse调试FFmpeg
所需软件 64位软件打包下载链接:http://pan.baidu.com/s/1i3B08Up 密码:o50u https://yunpan.cn/cBKDSbrGDgBvz 访问密码 1f55 ...
- windows下使用eclipse调试C程序
一.环境描述 Eclipse IDE for C/C++ Developers version 4.4.0 MinGW gcc/g++ version 4.8.1;gdb version 7.6.1 ...
- 在Windows下利用MinGW编译FFmpeg
目录 [隐藏] 1 环境与软件 2 第一步:安装MinGW 3 第二步:配置编译环境 4 第三步:配置SDL 5 第四步:编译 5.1 编译faac 5.2 编译fdk-aac 5.3 编译x264 ...
- Windows下利用Chrome调试IOS设备页面
本文介绍如何在 Windows 系统中连接 iOS设备 并对 Web 页面进行真机调试 必须前提 iOS设备.数据线 Node.js 环境 Chrome 浏览器 环境准备 安装Node环境 参考Nod ...
- 在Ubuntu下利用Eclipse开发FFmpeg配置小结
首先需要编译FFmpeg得到头文件和lib文件,参见:在Ubuntu下编译FFmpeg 选择File-New-C Project 选择Executable下的Empty Project,右侧选择Lin ...
- windows下用eclipse+goclipse插件+gdb搭建go语言开发调试环境
windows下用eclipse+goclipse插件+gdb搭建go语言开发调试环境 http://rongmayisheng.com/post/windows%E4%B8%8B%E7%94%A ...
- eclipse下使用cygwin的方法(Windows下用eclipse玩gcc/g++和gdb)
明天就回国了,今晚回国前写写如何配置eclipse和CDT.这个配置方法网上讨论不是很多,可能用的人少,毕竟Windows上写C++程序多数喜欢VS,即使写的是Linux程序,很多人仍然会用VS(说只 ...
随机推荐
- XSS攻击:获取浏览器记住的明文密码
作者:余弦(@evilcos) 0x01. XSS获取明文密码的多种方式 我已经感受到Web潮流带来的巨大革新,尤其是最近HTML5越来越火.浏览器们在客户端瓜分着这个Web OS,只要是对用户体验好 ...
- [Effective JavaScript 笔记]第42条:避免使用轻率的猴子补丁
41条对违反抽象原则行为的讨论之后,下面聊一聊终极违例.由于对象共享原型,因此每一个对象都可以增加.删除或修改原型的属性.这个有争议的实践通常称为猴子补丁. 猴子补丁示例 猴子补丁的吸引力在于其强大. ...
- Xenomai 安装准备工作
一些安装xenomai的参考资料: http://my.oschina.net/hevakelcj/blog/124290 http://blog.sina.com.cn/s/blog_60b9ee1 ...
- Eclipse 项目红色叹号:Build Path Problem
Description Resource Path Location TypeA cycle was detected in the build path of project 'shgl-categ ...
- volatile关键字
[本文链接] http://www.cnblogs.com/hellogiser/p/volatile.html [分析] volatile 关键字是一种类型修饰符,用它声明的类型变量表示可以被某些编 ...
- jQuery操作复选框的简单使用
开发中为了实现一个小功能,就是复选框的相互影响事件,如下图: 就是通过复选框设置权限,权限是分等级的,这是一个web管理系统的应用,一个管理员具有三个权限赋予,权限也是有等级的,其中删除和编辑权限相当 ...
- DFS:Curling 2.0(POJ 3009)
冰壶2.0 题目大意:就是给你一个冰壶和一个地图,地图上有石头,冰壶只能沿着x方向和y方向运动,并且要一直运动直到撞到石头为止,并且沿着此方向撞过来会把挡住的石头撞没,冰壶在停的时候可以扔出去一次 ...
- C++语法 初始化列表 数组引用
只能在初始化列表initilizationlist中初始化的有: 1.const修饰的数据成员或者reference参考 2.基类的构造函数 注意,数组不能引用,亦即以下代码是不对的 void fun ...
- [Android Pro] Android 之使用LocalBroadcastManager解决BroadcastReceiver安全问题
参考博客: http://blog.csdn.net/t12x3456/article/details/9256609 http://blog.csdn.net/lihenair/article/de ...
- image warping