一. 获取最新源码

可以上官网下载稳定版本,或者使用git获取最新代码,如下:
git clone git://git.videolan.org/vlc.git

后面一系列文章都是根据vlc3.0.6版来进行分析,下面的编译步骤也适用于这个版本

二.安装第三方依赖库

  1. 自动化工具部署
apt-get install git build-essential pkg-config libtool automake autopoint gettext
  1. 第三方库
apt-get updatesudo apt-get -y install libvorbis-dev libogg-dev libtheora-dev speex libspeex-dev flac libflac-dev \x264 libx264-dev  mpeg2dec libmpeg2-4-dev faad libfaad-dev faac libfaac-dev \lame libmp3lame-dev ffmpeg libavdevice-dev libmad0 libmad0-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   \libdvdnav-dev livemedia-utils liblivemedia-dev libcddb2 libcddb2-dev libcdio-dev libxcb-composite0-dev\libcdio-utils vcdimager libvcdinfo0 libvcdinfo-dev libgpg-error0 libgpg-error-dev \gnutls-bin libgnutls28-dev libdap-bin libdap-dev libxml2 libxml2-dev libpng-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 \libportaudio2 libupnp-dev  libexpat1 libexpat1-dev yasm libxcb-xv0 libxcb-xv0-dev \libx11-xcb1 libx11-xcb-dev libswscale-dev \liblua5.2-dev libxcb-randr0-dev libxcb-xkb-dev

编译

  1. 安装完后./bootstrap提示错误
    安装:
apt install -y flex bison

2、声明qt环境变量
如果需要使用界面启动的话,需要安装qt,vlc界面使用的qt,安装后需声明qt的环境变量,如下步骤:

export PKG_CONFIG_PATH=/opt/Qt5.14.2/5.14.2/gcc_64/lib/pkgconfig:/usr/lib/pkgconfig/:/usr/local/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/snap/gnome-3-34-1804/36/usr/lib/x86_64-linux-gnu/pkgconfig:$PKG_CONFIG_PATH

下面不能换行

export QT_CFLAGS="-I/opt/Qt5.14.2/5.14.2/gcc_64/include -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtWidgets -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtDBus -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtGui -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtOpenGL -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtSvg -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtUiTools -I/opt/Qt5.14.2/5.14.2/gcc_64/include/Qt3Support -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtCore -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtDesigner -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtNetwork -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtSql -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQml -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQmlDebug -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQmlModels -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQmlWorkerScript -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQuick -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQuick3D -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQuick3DAssetImport -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQuick3DRender -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQuick3DRuntimeRender -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQuick3DUtils -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQuickControls2 -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQuickParticles -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQuickShapes -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQuickTemplates2 -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQuickTest -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtQuickWidgets -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtTest -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtX11Extras -I/opt/Qt5.14.2/5.14.2/gcc_64/include/QtXml"

qt动态库路径:

 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/Qt5.14.2/5.14.2/gcc_64/lib:/usr/lib64/

//此处需要将Bin加入,不然moc找不到,编译qt的ui文件就会有问题

QTDIR=/opt/Qt5.14.2/Tools/QtCreator
export PATH=$QTDIR/bin:$PATH:/opt/Qt5.14.2/5.14.2/gcc_64/bin

3、configure :禁掉某些项
//

./configure --prefix=/usr/lib/vlc --enable-run-as-root --disable-dependency-tracking --enable-debug --disable-a52

4、make
5、验证编译通过后,可以选择开发的ide了,这里选择eclipse-c++,适合MakeFile这种工程
6、搭建eclipse-c++环境
这里不多说,不是难点,大体上分为两部,安装jdk:apt install openjdk-11-jdk。
再下载Eclipse installer后,选择c/c++安装。
7、启动后,导入MakeFile工程
8、会报moc找不到,在ide里,添加qt的环境变量,声明一下qt的moc编译器路径和qt的lib库路径即可
9、至此,vlc便能在ide上运行起来,但是播放了视频后再调试,会出现各种问题,试过ubuntu18,也是一下断点程序变崩溃,
只能直接运行。有大牛解决了的话,麻烦交流下,谢谢!

ubuntu 20 vlc源码编译相关推荐

  1. Ubuntu 20.04 源码编译Paddle2.2.2

    做研发,总是要不停装新机器和新系统.今天尝试了一下编译Paddle2.2.2. 先说结果: (1)Ubuntu20.04 + Python3.8.10 + gcc-8 (2)cuda和cudnn的版本 ...

  2. ubuntu 20.04 源码编译 cmake

    sudo apt install cmake 无法安装最新的cmake,只能从源码编译 可能会缺下面这个包,先安装下 sudo apt install libssl-dev 完了参考下面的链接即可 h ...

  3. Ubuntu 16.04源码编译安装Apache 2.4.25教程

    这篇文章主要为大家详细介绍了Ubuntu 16.04源码编译安装Apache 2.4.25,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文为大家介绍了Ubuntu 16.04源码编译安装Apa ...

  4. Anaconda Python3.6 OpenCV4.1.0 Ubuntu 16.04源码编译

    Anaconda Python3.6 OpenCV4.1.0 Ubuntu 16.04源码编译 转载于:https://blog.csdn.net/phdsky/article/details/782 ...

  5. Ubuntu 16.04 源码编译安装 uhd gnuradio

    Ubuntu 16.04 源码编译安装 uhd & gnuradio 环境介绍 UHD安装 1 安装依赖 2 编译 3 测试安装结果 4 配置 USB gnuradio安装 1 安装依赖 2 ...

  6. OpenCPN + Ubuntu 18.04 源码编译 + Codeblocks 调试 + wxFormBuilder 安装

    OpenCPN + Ubuntu 18.04 源码编译 文章目录 一.参考资料 二.源码编译流程 三.利用 IDE 编译 四.利用 IDE 调试 四.测试界面开发工具 一.参考资料 OpenCPN - ...

  7. opencv4.0在linux下编译,Ubuntu 18.04源码编译安装OpenCV 4.0步骤

    Ubuntu 18.04下标准常规安装方法安装的OpenCV版本比较低,想尝鲜使用4.0版本,只好源码安装. 安装环境 OS:Ubuntu 18.04 64 bit 显卡:NVidia GTX 108 ...

  8. Ubuntu 16.04 源码编译安装GPU tensorflow(二)

    如前一篇在1.4.0版本的Tensorflow上安裝Tensorflow Object Detection API,在验证测试时出現serialized_options=None问题.需安装高版本Te ...

  9. 【已解决】ubuntu 16.04 源码编译opencv4.5.1 报错 “../../lib/libopencv_imgcodecs.so.4.5.0: undefined reference t”

    源码编译opencv可参考教程:在ubuntu下安装opencv4.1.0详细步骤https://blog.csdn.net/weixin_44003563/article/details/90404 ...

最新文章

  1. BCH大区块导致中心化其实是伪命题
  2. dotweb——go语言的一个微型web框架(二)启动dotweb
  3. 最近miRNA研究上取得的新进展论文汇总
  4. 计算机网络:如何传输一条数据(详解)
  5. Java 异常处理机制
  6. 最短路径——Floyd算法HDU Today(hdu2112)
  7. lvs+keepalived+nginx+tomcat高可用高性能集群部署
  8. java日期大小比较
  9. linux中的管道和重定向
  10. 51nod-1131: 覆盖数字的数量
  11. 五、Google Code Prettify:实现代码高亮的JS库
  12. ARM开发5.3.4 基础实训( 1 ) 蜂鸣器输出控制--LPC21XX
  13. Lumion文件结构及Benchmark in progrees问题
  14. IV 估计:工具变量不外生时也可以用!
  15. Window环境MatConvNet安装
  16. 旋转卡壳算法求最小外接矩形代码
  17. 任买分期搞了个“斩男春计划” 我从中看到了消费分期成功的秘诀
  18. Rtmp推流adobe认证流程
  19. 极飞C2000分析报告
  20. SDSoC软硬件协同设计流程系列——1.基于SDSoC的软硬件协同设计流程简介

热门文章

  1. WICC 2021 召开在即 服务开发者生态是大会主要亮点
  2. 神州数码DCRS设备学习总结心得
  3. CAD教程:CAD软件中怎么画多跑楼梯?
  4. 股票基础知识 - 通过股票前缀代码判断股票是什么类型,属于哪个板块
  5. android 车载安富蓝牙电话开发,为了进一步助力物联网产品的开发,安富利研发安卓 9.0 操作系统...
  6. 论文的数据一般在哪里找?
  7. 一碗小米粥里的商业故事
  8. Google为TensorFlow设计的专用集成电路TPU3.0图片
  9. 广西人工智能学会第一次会员代表大会召开
  10. 第八集 人机交互(2)