转:在Ubuntu下用Code::Blocks编译x264源码

先声明:本人为x264初学者,以下内容如有错误,欢迎指出,共同进步。

刚开始接触x264,我想很多人和我一样,其目的只是想将代码编译通过,看看执行结果,再对代码跟踪调试。但是初学者会发现,把x264的源码变成.exe文件很麻烦,不过更困难的是,如何在IDE中将代码编译通过,论坛里也有一些帖子教大家如何在VS2008中编译,可能是我比较笨,看了几遍我都没有办法将Videolan上的源码编译通过。没有办法,小弟只好另外想办法。在查看了Doom10论坛上关于编译的帖子后,才知道x264是不支持微软的VS的,x264使用的是GCC的编译器,于是我将目光转向了Linux平台。在使用了几个IDE后,通过网上的介绍,我开始试着在CODE::Blocks中编译x264源码,现将这些天的探索过程于大家分享。

1.Ubuntu10.04LTS+CODE::Blocks8.02平台介绍。我相信大部分人和我一样,对Linux系统不是很了解,不过用了一段时间后发现Linux系统比以前好用多了。我安装的Ubuntu10.04LTS 32位版。下载链接:http://www.ubuntu.org.cn/desktop/get-ubuntu/download/

我是在Windows下直接安装的,即使是对我这样的Linux小白都是很容易的。这样的话,你需要先下载Wubi:http://www.ubuntu.org.cn/desktop/get-ubuntu/windows-installer/

不过Wubi默认下载安装的是64位版,需要注意。

Ubuntu安装好以后,在桌面左上角"应用程序"--"Ubuntu软件中心"中,搜索CODE::Blocks,然后安装就好,很容易。不过软件中心的CODE::Blocks的版本是8.02的,最新版是10.05,你可以在http://www.codeblocks.org/downloads/26中下载,如果你也是Ubuntu32位系统,选择codeblocks-10.05-1-debian-i386.tar.bz2 文件就好。下载解压后双击DEB包安装。

另:如在使用CODE::Blocks编译时提示缺少G++而出错,在Ubuntu软件中心下一个G++安装就可以了。

2.下载x264源码。在Ubuntu中下载x264源码是很容易的,我认为比在Windows下更容易。使用"应用程序"--"附件"--"终端",在其中输入"gitclone git://git.videolan.org/x264.git"命令即可,源码会下载到"/home/***/x264"***为某用户。

3.make命令编译x264源码。在"应用程序"--"附件"--"终端"中输入:"cd x264"(或者其他路径,是x264源码根目录即可),再输入"./configure",再输入"make",稍等一会,这时候你就可以看到x264文件夹中多了一些文件,其中就有x264的可执行文件(不知道这么说对不对)。可以通过命令"./x264"执行。

另:如在运行此过程时出错,可能是yasm没有装,在软件中心下载安装上即可。Ubuntu默认没有yasm的。

4.CODE::Blocks中编译x264源码。(以8.02版为例)

打开CODE::Blocks后,"File"--"New"--"Project..."在弹出对话框中选"Empty project"点击"go"

弹出一个欢迎你建立程序的对话框,"Next"

第二个对话框中输入工程名,一定要把工程文件夹指定到你的x264源码文件上,最后一项"Resulting filename"中要注意,CODE::Blocks会默认将工程文件放入一个文件夹中,一定要删除,将工程文件放入x264源码的根目录上。(将图中最后一项中
一个
/x264 删除)。

在第三个对话框中,编译器要选择GCC编译器,其余默认就可以了(我对此还有点怀疑)。工程建立好以后,在左边的"workspace"中会出现工程,右键单击,选择"Properties",在下面"This is a customer file"一项上打勾,并在"Makefile"一栏中填写你的x264源码中的Makefile路径,如:/home/user***/test/x264/Makefile(注意大小写)。点确定。 再右键单击左边的"workspace"中的工程,选择"Build Option",将"GNU GCC Compiler"一项下面的选项卡选至最后一项"Make commands",删除所有
"$target"
,点击"确定"。同样,再右键单击左边的"workspace"中的工程,选择"Properties",单击右下角有"Project's build option...",将"GNU GCC Compiler"一项下面的选项卡选至最后一项"Make commands",删除所有
"$target"
,点击"确定"。(这里我也很迷惑,怎么两个build option,不知有谁知道)。

这个时候就可以编译工程了。右键单击左边的"workspace"中的工程,选择"Build",这时候在右下角"Build Log"中就可以看到编译过程了。有警告,没错误。 另:Windows下如何编译x264(可以得到一个.exe文件)http://doom10.org/index.php?topic=26.0 以上就是小弟一周来摸索的结果,不希望大家把时间花费在这种事情上,所以整理出来跟大家分享,也希望能够有更多的人能够在Linux下学习编程,共同交流。 特别感谢x264_study群中(群号:30809441)xinnix的无私帮助。同时本文参考了http://blog.163.com/miracle_tan/blog/static/1632471052010330101953410/http://www.cnblogs.com/liyazhou/archive/2010/03/31/1701832.html内容,同样表示感谢!

参考:http://blog.163.com/miracle_tan/blog/static/1632471052010330101953410/

posted @ 2012-07-30 21:32  Mr.Rico  阅读(...)  评论(...编辑  收藏