linux下编译x264

其实在windows下使用vc已经编译过了,不过听到有人说在linux下编好了,我也就尝试做一下,况且x264源代码的makefile已经做好了,我只需要做的就是把文件copy一下,然后make 一下就可以了。

首先把x264-060805复制到目录下,我为了以后做到uclinux里面,直接放到了uclinux目录下user/x264-060805 然后进行make,一个一个找错误。

1、I64,uI64的错误,if (delta > 32767I64 || delta < -32768I64),这是lsp添加的,把注释部分换一下,去除I64的使用

2、nasm。我用的ubuntu没有安装nasm,所以一些汇编无法通过,直接安装一下就可以了sudo apt-get install nasm.

然后在x264-060805下make,就编译好了可执行文件x264,有600多K,比vc下的要大,估计是添加的模块不同,或者编译方法不同。暂且不管

简单测试一下,./x264 -o test.264 file.yuv 176x144 得到了.264文件,用vlc播放,可以播放。暂时证明是编译正确吧。

下一步是把这个模块加入到uClinux进去。

--------------------------

把X264这个模块加入到uClinux中,这和普通的应用程序添加是一样的,暂时考虑的是静态的加载,也就是编译到内核中去。

1、user/x264-060805下把源文件都放这里,并确认x264-060805/下面的makefile正确(上面的工作已确认)

2、修改uClinux-dist/user/Makefile 把刚才加进来的这个文件夹目录放到上级目录中去

添加:dir_$(CONFIG_USER_X264)  +=x264-060805

3、修改config/config.in,把x264这个模块加入到配置目录中去。

添加

mainmenu_option next_comment comment 'X264'

bool 'x264' CONFIG_USER_X264 comment "x264"

endmenu

4、修改工作已经结束,下面是配置和编译过程。

运行make menuconfig,会打开一个图形界面,选择customize vendor/user setting然后保存退出,这样会在调用config.in的时候自动认出哪些是新的。退出后会自动运行,然后弹出一个新的图形界面,选择刚才加入的x264模块。

5、上面的配置已经做好,只需再make clean, make就可以了。

注意这里使用的是2.6的内核,所以不需要那么复杂的make dep 等。

做完这些之后,可以发现,在uclinux-dist下产生了一个新的文件夹romf,这个文件夹里包含了所有的内核模块,然后images目录下有编译好的镜像产生,这个镜像和romfs目录下其实内容是一样的,只是这个是对它的镜像文件。

下面要做的以前也已经做过了,只需要把u-boot和uImage下载到板子上,板子上的操作系统就跑起来了。

 

你可能感兴趣的:(linux下编译x264)