博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
VLC-3.0(3.x) 版本 Linux 环境编译教程
阅读量:5284 次
发布时间:2019-06-14

本文共 3139 字,大约阅读时间需要 10 分钟。

VLC-3.0(3.x) 版本 Linux 环境编译教程

盼星星盼月亮,vlc 3.x 版本年初正式发布了。(Nightly 版本也从 3.x 更新至 4.x)

和以往版本一样,按照 wiki 的教程直接编译是不可能编译成功的 :)

总感觉官方教程就特么是在逗孙子,落后了不知多少个版本

废话不多说了,记录一下编译过程,笔者的环境是 Ubuntu 16.04 64位。

工具安装

git、automake、libtool等,相信大家都有,没有的按照如下命令行自行安装。

sudo apt-get updatesudo apt-get install git build-essential pkg-config libtool automake autopoint gettext

注意,安装完以后检查一下 gettext 版本。

vlc-3.0 要求 gettext>=0.19.8,但是 ubuntu 官方源只更新到了 0.19.7

gettext --version

如果正常会显示:

gettext (GNU gettext-runtime) 0.19.8

如果版本小于规定版本,则需要单独安装 gettext,如下

wget ftp://ftp.gnu.org/gnu/gettext/gettext-0.19.8.tar.xztar -Jxvf gettext-0.19.8.tar.xzcd gettext-0.19.8/./configure --prefix=/usrsudo make && sudo make install

安装完成后再确认一下 gettext,如果仍为旧版,则按照本机环境修改 "prefix=path" 指定的路径重新编译安装,直到版本正确。

下载源代码

可以从 官网git 下载,也可以下载 github 上的镜像。

  • 官网地址:
  • GitHub:

此处以 GitHub 为例

git clone https://github.com/videolan/vlc-3.0cd vlc-3.0/

这里最好选择一个打了 tag 版本,即官方发布版,暗坑相对其他版本会相对少一些。

笔者编译时最新的版本是 3.0.1

git taggit branch -b 3.0.1 3.0.1

按照 Wiki 教程,此处应该执行 ./bootstrap。但实际是新版是不能通过的,需要先安装 flex 和 bison

sudo apt-get install flex bison

然后运行:

sudo ./bootstrap

命令行显示:

Successfully bootstrapped

即可继续开始下一步工作。

安装第三方依赖库

1. build-dep 和 vlc

构建依赖包,200多M

sudo apt-get build-dep vlc

2. 旧版 vlc 乱七八糟的依赖包

鬼知道不安能不能过,但安装了稳过,反正我安了

相比 有一些删减和替代(一些失效的库)。

sudo apt-get install libvorbis-dev libogg-dev libtheora-dev speex libspeex-dev flac libflac-dev x264 libx264-dev a52-0.7.4 liba52-0.7.4-dev mpeg2dec libmpeg2-4-dev faad libfaad-dev faac libfaac-dev lame libmp3lame-dev libavdevice-dev libmad0 libmad0-dev libschroedinger-dev libebml-dev libdca-dev twolame libtwolame-dev libmpcdec-dev libvorbisidec1 libvorbisidec-dev libass-dev libmatroska-dev  libdvbpsi-dev libmodplug1 libmodplug-dev libshout3 libshout3-dev  libdvdread4 libdvdnav4 libdvdnav-dev livemedia-utils liblivemedia-dev libcddb2 libcddb2-dev libcdio13 libcdio-dev libxcb-composite0-dev libcdio-utils vcdimager libvcdinfo0 libvcdinfo-dev libgpg-error0 libgpg-error-dev libgcrypt11-dev gnutls-bin libgnutls-dev libdap-bin libdap-dev libxml2 libxml2-dev libpng12-0 libpng12-dev libjpeg8 libtiff5 libsdl1.2-dev libsdl-image1.2 libsdl-image1.2-dev libc-bin gettext libfreetype6 libfreetype6-dev libfribidi-dev libfribidi0 zlib1g zlib1g-dev libtag1-dev libcaca0 libcaca-dev caca-utils libqt4-dev libportaudio2 libupnp-dev libupnp6 libexpat1 libexpat1-dev yasm libxcb-xv0 libxcb-xv0-dev libx11-xcb1 libx11-xcb-dev liblua5.2-dev libswscale-dev

3. FFMpeg

VLC 要求 libavcodec>=57

官方给的 PPA 上,libavcodec版本是56,版本过低需要源码安装。

安装yasm

sudo apt-get install yasm

从官网 clone 最新的 git 仓库

git clone https://git.ffmpeg.org/ffmpeg.gitcd ./ffmpeg

指定install目录为"./host",指定编译为动态库,开始编译。

./configure --prefix=host --enable-shared --disable-docmake && make install

把生成的动态库文件拷贝到"/usr/bin/"目录下

cd ./host/libsudo cp ./* /usr/bin/

安装完成,可以切到host/bin目录下执行一下"./ffmpeg"确认库版本。

编译配置

先安装 wayland-protocols,不然之后的步骤会失败。

sudo apt-get install wayland-protocols

./configure,通过 prefix 指定编译输出目录

./configure --prefix=/path/to/vlc_build_dir --enable-run-as-rootsudo make && sudo make install

大功告成,编译完成之后可以去刚在指定的编译输出目录 ./bin/vlc 运行 vlc 了。

Windows 编译先不搞了,涉及到交叉编译,坑只会更多不会少,等别人踩过一遍再搞。

转载于:https://www.cnblogs.com/FutaAlice/p/9041756.html

你可能感兴趣的文章
everything 搜索文件
查看>>
easyui 表单验证validatetype——支持自定义验证
查看>>
iOS-GCD多线程编程详解1
查看>>
Javascript实用方法
查看>>
损坏视频的烦恼
查看>>
网络字节序和主机字节序转换-------- “可交换操作”
查看>>
Python教程[廖雪峰],主要是实践
查看>>
python记录_day03 字符串
查看>>
MarkDown测试
查看>>
led指示灯电路图大全(八款led指示灯电路设计原理图详解)
查看>>
潜水手表的历史
查看>>
aspose.word 使用简单方法
查看>>
私有属性和私有方法
查看>>
java.util.regx Demo
查看>>
react-fetch数据发送请求
查看>>
C#中的多线程使用 -- Thread 类详解(转)
查看>>
Devices下设备的进程显示为问号的问题
查看>>
遍历文件夹的方法
查看>>
网络协议分析软件
查看>>
wpf的VisualStateManager
查看>>