结合系列教程http://dranger.com/ffmpeg/tutorial01.html把ffmpeg,SDL和教程在linux平台下用GCC编译,并加入调试参数,已达到能编译后所有源码都能用gdb跟踪的效果。网页上有很多教程都是使用VC或者mingui的,而且用的是已经编好的ffmpeg和SDL的库来编译,这样的好处是免去了一些编译的步骤和时间,但是却不能让我们可以自己跟踪ffmpeg和SDL的源码。为了能结合跟踪这些源码,用ffmpeg和SDL的源码以及教程的调用代码来编译一个工程,这里结合我自己的操作,一步一步列出从简单到复杂的综合编译过程,也希望能在这个过程重拾对Makefile的理解。
1. 首先建立目录ffmpeg和SDL,分别下载ffmpeg和SDL(http://www.libsdl.org/download-1.2.php)的源码。在ffmpeg里运行
./configure --disable-yasm
make
在SDL目录里运行
./configure
make
生成的库libSDL.a和libSDLmain.a在SDL/build/.libs目录下。
2. 建立与ffmpeg和SDL同级的目录simulation, 在simulation下建立src, include, out, obj这四个目录,并把tutorial01.c放在src目录下。具体的目录结构如下:
---ffmpeg
---SDL
---simulation
--------src
--------include