Chinaunix首页 | 论坛 | 博客
  • 博客访问: 838524
  • 博文数量: 1384
  • 博客积分: 27795
  • 博客等级: 上将
  • 技术积分: 16887
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-12 09:28
个人简介

只是心态,抓住机会。

文章分类

全部博文(1384)

文章存档

2014年(3)

2013年(403)

2012年(978)

分类: LINUX

2012-08-31 15:35:58

linux下vcl 编绎过程记录  http://fengqing888.blog.163.com/blog/static/330114162011711112455453/

2011-08-11 11:24:55|  分类: Linux|字号 订阅

这几天,刚好有时间(闲得蛋疼),于是想要去看看vlc的源码。出于本能的原因,下载了源码后,第一件想要做的事就是尝试着编绎此源码。网络上相关 编绎资料也多, 但多数没法满足我的要求, 很多资料更多是作者随手记录的笔记,作者编绎的vlc版本与现在所下载的最新版本也有了一定的偏差。

 

 

编绎环境

 

linux版本:fedora9

编绎器:gcc 4.3.0

vlc源码版本:vlc-1.1.7 (已是此时的最新的版本)

qt4源码库:qt-everywhere-opensource-src-4.7.1.tar.gz

 

 

vlc 的源码在编绎中依赖的其它开源库过多, 所以首先我决定编绎出一个最小的能成功能运行的vlc实例出来。

 

一 

1 编绎qt4  vlc 的ui界面依赖qt4作为界面库。

从 下载最新的qt开发包

qt-everywhere-opensource-src-4.7.1.tar.gz

解压文件后,编绎安装。

#tar zxvf qt-everywhere-opensource-src-4.7.1.tar.gz

#cd qt-everywhere-opensource-src-4.7.1

 

指定编绎选项

#./configure --prefix=/home/extern/install/qt4 -fast -no-largefile -no-sse3 

 

/home/extern/install/qt4 为指定的编绎完成后的生成的qt4库,头文件 ,demo程序等安装目录。

 

#./gmake 

 

#./gmake install

 

 

此时Ok后,会发现/home/extern/install/qt4目录下会生成bin lib include demos doc examples imports等目录

 

进入lib目录下会可能看到有pkgconfig这样的一个目录,pkgconfig目录的路径应该是home/extern/install/qt4/lib/pkgconfig

接下来编绎vlc 会使用该路径。

 

 

 

 


 

进入vlc目录

#cd vlc-1.17

建立一个脚本文件,用于配置编绎选项。

#vim build_simple_vlc.sh

此时为什么会建立一个脚本呢?主要是为了方便,每次为了修改configure配置,都得重新输入一长串命令, 这个还蛮麻烦的。有了该脚本后,以后改起配置,也省心省力多了。

 

 


view plainprint?
#!/bin/bash  
export PKG_CONFIG_PATH="/home/extend/install/qt4/lib/pkgconfig"  
./configure --enable-run-as-root --prefix=/home/extend/install/vlc-simple --disable-avcodec --disable-postproc --disable-a52 --disable-fribidi   
 

 

设置PKG_CONFIG_PATH环境变量,编译vlc时能自已寻找到qt库和头文件。其中/home/extern/install/qt4 /为编绎qt4时指定的安装目录。

export PKG_CONFIG_PATH="/home/extern/install/qt4/lib/pkgconfig"

 

指定vlc 编绎后的安装目录为/home/extern/install/vlc-simple

 

 

 

 

3 执行./build_simple_vlc.sh 脚本,接下来已经漫长的等待时间。一切Ok的话, 在指定的安装目录/home/extern/vlc-simple下会看到已编译ok的vlc可执行文件和一些vlc库文件。

 

测试一下,我们所编绎的vlc程序(注意形在图形界面下的终端)

#cd /home/extern/install/vlc-simple/bin

#./vlc


success!可以看到vlc界面启动成功。

 

总结:以上编绎是vlc程序还仅仅只是能够实现音频解码,想要实现视频解码,还得编绎其它更多的依赖库文件。我的目标是学习vlc 的设计思想,编绎vlc对我来说只是学习它的方法之一,以上所编绎的vlc程序对我来说应是完全够用了。

 

 

PS:一个小技艺, 在查看configure 的配置选项,我喜欢先执行./configure --help > configure_help.txt 命令,将所有的configure配置选项写入configure_help.txt文件,然后再打开configure_help.txt文件进行查 看。
阅读(691) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~