最近著名开源播放器VLC 发布了1.1.0 版本,支持GPU硬解,播放高清HD 能力增强.
再加上我用的1.0.6版本在播放《空姐全集》的时候,表现不是很好.有的时候会出现一些莫名其妙的错误,比如画面不出来,声音也挂了的情况。故而决定升级.
从VLC官方镜像下载1.1.0 源码包,解压,进入目录
我的configure:
sharl@sharl-laptop:~/vlc-1.1.0$ ./configure \
> --prefix=/usr/local/vlc \
> --bindir=/usr/local/bin \
> --sbindir=/usr/local/sbin \
> --sysconfdir=/etc/sysconfig \
> --localstatedir=/var \
> --enable-optimize-memory \
> --enable-vcdx \
> --disable-gme \
> --disable-libva \
> --enable-wma-fixed \
> --enable-real \
> --enable-realrtsp \
> --with-x \
> --enable-snapshot \
> --enable-cyberlink \
> --disable-goom \
> --disable-projectm \
> --disable-osso_screensaver \
> --enable-sqlite \
> --with-kde-solid=no
检查依赖,报了一堆错误.
configure: WARNING: Library libnotify needed for notify was not found
configure: WARNING: Library libraw1394 >= 2.0.1 libdc1394-2 >= 2.1.0 needed for dc1394 was not found
configure: WARNING: Library libraw1394 >= 2.0.1 libavc1394 >= 0.5.3 needed for dv was not found
configure: WARNING: Library gnome-vfs-2.0 needed for gnomevfs was not found
configure: WARNING: Library shout >= 2.1 needed for shout was not found
configure: WARNING: libmodplug not found!
configure: WARNING: Library twolame needed for twolame was not found
configure: WARNING: Library libdca >= 0.0.5 needed for dca was not found
configure: WARNING: Library ogg theora >= 1.0 needed for theora was not found
configure: WARNING: Library dirac >= 0.10.0 needed for dirac was not found
configure: WARNING: Library schroedinger-1.0 >= 1.0.6 needed for schroedinger was not found
configure: WARNING: Library fluidsynth needed for fluidsynth was not found
configure: WARNING: LIBASS library not found
configure: WARNING: The development package for SDL_image is not installed.
You should install it alongside your SDL package.
configure: WARNING: Library librsvg-2.0 >= 2.9.0 needed for svg was not found
configure: WARNING: Not building Roku HD1000 compatible video output
configure: WARNING: Not building Roku HD1000 compatible video output
configure: WARNING: Library portaudio-2.0 needed for portaudio was not found
configure: WARNING: Library jack needed for jack was not found
configure: WARNING: Library libupnp needed for upnp was not found
configure: WARNING: Library libudev >= 142 needed for udev was not found
configure: WARNING: Library libmtp >= 1.0.0 needed for mtp was not found
configure: error: Library sqlite3 >= 3.6.0 needed for sqlite was not found
还是那句话,如果硬盘和网速表示影响不大的话,可以通过 sudo apt-get build-dep vlc 去解决大多数的依赖问题.
不过也有意外情况,因为ubuntu的官方源里面目前还不是最新的1.1.0版本.所以有个别依赖未能满足.
比如:
No package 'xcb-shm' found
>sudo apt-get install libxcb-shm0-dev
No package 'xcb-xv' found
>sudo apt-get install libxcb-xv0-dev
No package 'x11-xcb' found
>sudo apt-get install libx11-xcb-dev
这是vlc 1.1.0 的新特性,用 XCB 取代了之前的 Xlib,这点从vlc 的更新日志里面可以看到.
* Most X11-related plugins now use XCB instead of Xlib. VLC now uses
- xproto,
- xcb, xcb-shm, xcb-xv, xcb-randr (from libxcb),
- xcb-keysyms (from xcb-utils),
- x11-xcb (from libx11) - only for GLX support.
其余的一些也可以在packages.ubuntu.com 里面找到,如 libfluidsynth 等
依赖检查通过后,生成makefile文件,就可以编译了.
执行 make . 这个过程很漫长,耐心等会.
如果期间报错: make[2]: *** [lua/extensions/allocine-fr.luac] 错误 1
应该是 luac 没有安装,不过vlc 是不会报错的……
sudo apt-get install lua5.1 && make distclean
重新编译即可通过.
这次就OK了,完了之后 make install 把vlc安装至指定目录(/usr/local/vlc). 整个过程就算完成了.
运行 vlc --version 查看版本信息.
sharl@sharl-laptop:~/vlc-1.1.0$ vlc --version
VLC media player 1.1.0 The Luggage (revision exported)
VLC 版本 1.1.0 The Luggage (exported)
编译者 sharl 编译时间 sharl-laptop (Jun 27 2010 14:53:29)
编译器: gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5)
本程序在法律许可范围内无任何担保。
您可以依照 GNU 一般公众许可证发布它;
请参阅名为 COPYING 的文件获取详细信息。
由 VideoLAN 小组编写;参见 AUTHORS 文件。