Ubuntu2004编译VLC-QT(记录)(根据官方步骤来)

news2024/9/20 5:58:47

来到VLC-QT的github官方地址--VLC-QT(点击前面的)

下载官方源码,也可以git clone拉取

2:解压源码之后,进入文件夹

创建文件夹“build”用于存放待会编译产生的相关文件,执行

mkdir build
cd build

 回到VLC-QT官方的github地址,往下拉,找到“Building and requirement”,点击进入,如图:

然后再新界面继续找到自己的系统,如图:我的是linux

 因为我们前面已经创建build文件夹并进入,所以我们直接执行:(这些操作都是在build目录中完成)

cmake .. -DCMAKE_BUILD_TYPE=Debug
make -j8
make install

完成后,build目录下,会多出许多文件:

其中:build目录下的src文件中的这三个里面的.SO文件(刚刚好每个都是三个.so文件,一共9个),移植到自己的Qt项目中,即可使用了

报错1:

        CMake Error at config/Dependencies.cmake:29 (FIND_PACKAGE): By not providing "FindQt5Quick.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "Qt5Quick", but CMake did not find one.

         Could not find a package configuration file provided by "Qt5Quick" (requested version 5.2.0) with any of the following names:

        Qt5QuickConfig.cmake

        qt5quick-config.cmake

        Add the installation prefix of "Qt5Quick" to CMAKE_PREFIX_PATH or set "Qt5Quick_DIR" to a directory containing one of the above files. If "Qt5Quick" provides a separate development package or SDK, be sure it has been installed.

   Call Stack (most recent call first):

        CMakeLists.txt:50 (INCLUDE)

则执行即可: (报错原因为:编译过程中,无法找到相关的Qt5Quick 的开发包)(下面命令是安装Qt5Quick的相关包)(注意执行完,安装好之后,重新执行“cmake .. -DCMAKE_BUILD_TYPE=Debug”)

sudo apt-get install qtdeclarative5-dev

报错2: 

CMake Error at config/Dependencies.cmake:28 (FIND_PACKAGE):
  By not providing "FindQt5Core.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Qt5Core", but
  CMake did not find one.

  Could not find a package configuration file provided by "Qt5Core"
  (requested version 5.2.0) with any of the following names:

    Qt5CoreConfig.cmake
    qt5core-config.cmake

  Add the installation prefix of "Qt5Core" to CMAKE_PREFIX_PATH or set
  "Qt5Core_DIR" to a directory containing one of the above files.  If
  "Qt5Core" provides a separate development package or SDK, be sure it has
  been installed.
Call Stack (most recent call first):

  CMakeLists.txt:51 (INCLUDE)

-- Configuring incomplete, errors occurred

报错原因:编译过程无法找到相关的Qt5

1:确保已经安装了 Qt5。如果没有就安装:

 sudo apt-get install qt5-default qtbase5-dev

   2:如果确保正确安装了Qt5,则设置 CMake 的路径:
        找到 Qt5 的安装路径,并将其添加到 CMAKE_PREFIX_PATH 或设置 Qt5Core_DIR。
        示例

cmake -DCMAKE_PREFIX_PATH=/qt5 ..(Qt5的安装路径)

或者:

cmake -DQt5Core_DIR=/path/to/qt5/lib/cmake/Qt5Core ..


确保 CMakeLists.txt 文件中包含了正确的 Qt5 查找指令:

find_package(Qt5Core 5.2 REQUIRED)

其他报错我还没遇到,如有其他情况,欢迎截图放在评论区下方,我如果看到会第一时间回复。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2075737.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Redis】Redis 持久化 -- RDB AOF

文章目录 1 持久化介绍2 RDB2.1 RDB 介绍2.2 触发方式2.3 流程介绍2.4 RDB 文件2.5 RDB 优缺点 3 AOF3.1 AOF 介绍3.2 缓冲区刷新策略3.3 AOF 重写机制3.3.1 重写机制介绍3.3.2 混合持久化3.3.3 重写触发方式3.3.4 AOF 重写流程 3.4 AOF 优缺点 4 启动时数据恢复 1 持久化介绍 …

OceanBase V4 技术解读:从Alter Table 看DDL的支持

背景 数据库类型可以划分为两大类:关系型数据库和非关系型数据库。而关系型数据库以表格形式进行数据组织,同时遵循表关系的约束,例如创建一张表,表里面包含多个列,不同的列可以有不同的类型。当需要改表结构&#xf…

什么是数据库 DevOps?

在深入研究数据库 DevOps 之前,先回顾一下什么是 DevOps。它没有统一的定义,但我们知道它起源于软件开发方法与部署和运维的结合。 大约 2007 年和 2008 年,软件开发和 IT 界人士提出了这样的担忧:两个行业的分离,即编…

Datawhale X 李宏毅苹果书 AI夏令营(深度学习入门)task3

实践方法论 在应用机器学习算法时,实践方法论能够帮助我们更好地训练模型。如果在 Kaggle 上的结果不太好,虽然 Kaggle 上呈现的是测试数据的结果,但要先检查训练数据的损失。看看模型在训练数据上面,有没有学起来,再…

解锁 TypeScript Record 的奇妙用法:轻松搞定键值对!

在没有非常了解 Record 之前,定义对象的类型,一般使用 interface。它是 TS 中定义数据结构的一种方式,用来描述对象的形状、函数类型、类的结构等。 // 基本用法 interface User {name: string;age: number;isAdmin: boolean; }const user: …

抖音ip地址与实际地址不符是怎么回事

在数字化时代,社交媒体已成为人们日常生活不可或缺的一部分,而抖音作为其中的佼佼者,更是吸引了数以亿计的用户。然而,在使用抖音的过程中,不少用户发现了一个有趣而又令人困惑的现象:抖音显示的IP地址与实…

趣味算法------煤球数目

目录 前言: 题目描述: 解题思路: 具体代码: 前言: 数列在数学中是一个非常基础且重要的概念,它指的是按照一定顺序排列的一系列数。数列中的每一个数被称为该数列的项。 数列可以分为有限数列和无限数列…

7 nestjs 环境变量

安装 pnpm i --save nestjs/confignestjs/config 内部使用 dotenv 实现。 配置 一般会在根模块AppModal中导入,并使用.forRoot()静态方法导入它的配置 import { Module } from nestjs/common; import { ConfigModule } from nestjs/config; ​ Module({imports: …

降低游戏直播软件开发风险:自建团队、外包公司与现成源码

随着游戏直播行业的快速发展,越来越多的企业和个人开始涉足这一领域。然而,在游戏直播软件的开发过程中,选择合适的开发模式对于降低供应链风险至关重要。本文将探讨三种主要的游戏直播软件开发模式,并分析它们各自的风险管理策略…

设计模式篇(行为型模式 - DesignPattern)(持续更新迭代)(图片待加载)

目录 一、模版方法模式(制作豆浆问题) 1. 豆浆制作问题 2. 模板方法模式 2.1. 基本介绍 2.2. 代码实现 2.3. 钩子方法 2.4. 应用案例 应用一:Android中View的draw 应用二:Spring 框架应用的源码分析 2.5. 注意事项和细节…

泰国中小企业局局长率考察团到访深兰科技

继泰国社会发展和人类安全部考察团的访问之后,深兰科技本周迎来了第二波泰国政府考察团的莅临。 2024年8月23日,泰国中小企业促进局局长巴尼塔西那瓦女士率领泰国东盟企业家协会、泰国法政大学及泰国企业家代表团访问了深兰科技集团总部。深兰科技集团董…

卡牌抽卡机小程序搭建,探索新鲜有趣的拆卡体验

卡牌作为一种新的潮玩方式,市场热度逐渐提升,在各大社交平台上,拆卡的话题层出不穷,各种卡牌迅速走红,成为了当下“顶流”,吸引了众多的消费者!卡牌的价格低,还涉及到了动漫等各个热…

电商行业为什么要做私域?

有伙伴提到,他们所在的电商企业是否有必要进行私域运营,担心投入太大。 实际上,私域运营对于电商企业来说是非常有必要的。它是企业的用户数据资产,关乎着企业未来的发展。私域运营能够帮助企业更好地了解用户需求,提…

Vulkan入门系列17 - 多重采样( Multisampling)

一:概述 我们的程序现在可以加载多个级别的纹理,从而解决了在渲染远离观察者的物体时出现的伪影问题。现在图像变得平滑多了,但仔细观察,你会发现绘制的几何图形边缘呈现锯齿状。这在我们早期渲染一个四边形的程序中尤为明显: 这种不希望有的效果被称为 “锯齿”,…

2024高质量:备战金九银十的Java八股文+场景题,看完这篇就够了!

前言 又到一年金九银十面试跳槽季,你准备好了吗? 今天为大家整理了目前互联网出现率最高的大厂面试题,所谓八股文也就是指文章的八个部分,文体有固定格式:由破题、承题、起讲、入题、起股、中股、后股、束股八部分组成&#xff0…

Python 数据分析之Numpy学习(二)

Python 数据分析之Numpy学习(二) 接上文:Python 数据分析之Numpy学习(一) 四、数组的索引和切片 索引即通过一个无符号整数值获取数组里的值。Python索引是从0的位置开始。 切片即对数组里某个片段的描述。 # 载入…

虚幻5|制作玩家血量,体力(还未编辑,只用于引用)

未编写,仅引用 优化后: 把增加生命,减少生命,也可以用在体力里,更改如下 限制浮点,如果血量或体力按10来扣,如果你的血量降低到5,那么就会以5的数值来扣,而不会扣成-5…

如何在路由器中抓包分析

方法是在openwrt中一般都集成了tcpdump抓包工具,可以通过命令抓包保存为pcap文件,导出来后可以通过wireshark分析。 相信大部分研发人员都在windows下抓过包,最常用的软件就是wireshark,通过wireshark可以很方便的分析数据报文。抓…

理解运营商和全球网络

目录 理解运营商和全球网络 如何上网 光纤入户 购买设备 配置网络 互联网的发展 引入 国家推动 理解运营商和全球网络 如何上网 光纤入户 也就是俗称的拉网线 将光纤宽带服务直接连接到你家中 光纤是由运营商提供 通过玻璃丝传递光电信号,传进来变成模拟信号,再由调制…

【计算机网络】socket网络编程 --- 实现一些简易UDP网络程序

👦个人主页:Weraphael ✍🏻作者简介:目前正在学习c和算法 ✈️专栏:Linux 🐋 希望大家多多支持,咱一起进步!😁 如果文章有啥瑕疵,希望大佬指点一二 如果文章对…