VLC compile on Linux

以下所有过程均参考VLC Building文档,https://wiki.videolan.org/UnixCompile/

(1) 安装linux,本人使用Xubuntu 14.04和Fedora20

(2) 安装所需要的编译器和工具链

On Fedora
% sudo yum install git libtool pkgconfig

On Debian or Ubuntu
% sudo apt-get install git libtool build-essential pkg-config autoconf

On Arch
% sudo pacman -S base-devel git pkg-config autoconf automake


(3) 获取VLC源码

git clone git://git.videolan.org/vlc.git

** 你也可以之间下载源代码包进行编译

wget ftp://ftp.videolan.org/pub/videolan/vlc/2.1.5/vlc-2.1.5.tar.xz

(4) bootstrapping the source tree

cd vlc
./bootstrap

(5) 获取编译所需的第三方库

On Fedora
% sudo yum-builddep vlc

On Debian or Ubuntu
% sudo apt-get build-dep vlc

On OpenSuSE
% sudo zypper si -d vlc
** OpenSuSE必须先添加VLC repositories
sudo zypper ar http://download.videolan.org/pub/vlc/SuSE/<openSUSEversion> VLC
替换 <openSUSEversion> 为你当前系统的版本,如 (12.1, 11.4, 11.3, 11.2 or 11.1)

(6) 编译第三方库

安装所需的编译工具链
% apt-get install subversion yasm cvs cmake
% apt-get install protobuf-compiler libprotoc-dev

cd contrib
mkdir native
cd native
../bootstrap
make

make过程中有可能出现第三方库下载失败,请参考错误输出手动下载并放在 contrib/tarballs/ 目录下,也可以到这里下载http://download.videolan.org/contrib/

(7) Configure VLC

在VLC目录执行
./configure

如果你想要调试版,需要加入一下参数(请参考https://wiki.videolan.org/Debug/)
./configure --enable-debug --disable-optimizations
同时需要去除--enable-release

自定义编译选项请参考https://wiki.videolan.org/Configure/

./configure --enable-x11 --enable-xvideo --enable-sdl --enable-avcodec --enable-avformat \
--enable-swscale --enable-mad --enable-libdvbpsi --enable-a52 --enable-libmpeg2 --enable-dvdnav \
--enable-faad --enable-vorbis --enable-ogg --enable-theora --enable-faac --enable-mkv --enable-freetype \
--enable-fribidi --enable-speex --enable-flac --enable-live555 --with-live555-tree=/usr/lib/live \
--enable-caca --enable-skins --enable-skins2 --enable-alsa --enable-qt4 --enable-ncurses

Linux:
./configure --enable-x11 --enable-xvideo --disable-gtk \
--enable-sdl --enable-ffmpeg --with-ffmpeg-mp3lame \
--enable-mad --enable-libdvbpsi --enable-a52 --enable-dts \
--enable-libmpeg2 --enable-dvdnav --enable-faad \
--enable-vorbis --enable-ogg --enable-theora --enable-faac\
--enable-mkv --enable-freetype --enable-fribidi \
--enable-speex --enable-flac --enable-livedotcom \
--with-livedotcom-tree=/usr/lib/live --enable-caca \
--enable-skins --enable-skins2 --enable-alsa --disable-kde\
--disable-qt --enable-wxwindows --enable-ncurses \
--enable-release

Linux GIT
./configure --enable-x11 --enable-xvideo --disable-gtk \
--enable-sdl --enable-ffmpeg --with-ffmpeg-mp3lame \
--enable-mad --enable-libdvbpsi --enable-a52 --enable-dca \
--enable-libmpeg2 --enable-dvdnav --enable-faad \
--enable-vorbis --enable-ogg --enable-theora --enable-faac\
--enable-mkv --enable-freetype --enable-fribidi \
--enable-speex --enable-flac --enable-livedotcom \
--with-livedotcom-tree=/usr/lib/live --enable-caca \
--enable-skins --enable-skins2 --enable-alsa --disable-kde\
--disable-qt --enable-wxwindows --enable-ncurses \
--enable-asa --enable-release

(8) 编译VLC

make

(9) 安装VLC

make install

(10) 卸载

make uninstall

(11) 清理工程

make clean