设为首页 加入收藏

TOP

Linux下vlc编绎过程记录
2014-11-24 07:54:05 来源: 作者: 【 】 浏览:0
Tags:Linux vlc 过程 记录

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


编绎环境


编绎器: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作为界面库。


从http://qt.nokia.com/downloads/linux-x11-cpp 下载最新的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 会使用该路径。


2


进入vlc目录


#cd vlc-1.17


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


#vim build_simple_vlc.sh


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


view plaincopy to clipboardprint
#!/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
#!/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文件进行查看。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux的Cache Memory(缓存内存)机.. 下一篇在Fedora 10上编译vlc1.0.2全程笔..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·在 Redis 中如何查看 (2025-12-26 03:19:03)
·Redis在实际应用中, (2025-12-26 03:19:01)
·Redis配置中`require (2025-12-26 03:18:58)
·Asus Armoury Crate (2025-12-26 02:52:33)
·WindowsFX (LinuxFX) (2025-12-26 02:52:30)