x86架构ubuntu22下运行WILL模拟器dophin
0. 环境
i5实体机ubuntu22
1. 安装依赖
$ sudo apt install build-essential git cmake ffmpeg libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libevdev-dev libusb-1.0-0-dev libxrandr-dev libxi-dev libpangocairo-1.0-0 qt6-base-private-dev libbluetooth-dev libasound2-dev libpulse-dev libgl1-mesa-dev$ sudo apt install libudev-dev libsystemd-dev || sudo apt install libeudev-dev #distros without systemd like AntiX must use eudev instead
安装qt6
$ sudo apt install qt6-base-dev qt6-base-private-dev qt6-multimedia-dev
$ sudo apt install qt6-l10n-tools qt6-tools-dev qt6-tools-dev-tools
$ sudo apt install libgl-dev
2. 获取源码
$ git clone https://github.com/dolphin-emu/dolphin
$ cd dolphin$ git submodule update --init Externals/mGBA
$ git submodule update --init Externals/spirv_cross
$ git submodule update --init Externals/zlib-ng
$ git submodule update --init Externals/libspng
$ git submodule update --init Externals/VulkanMemoryAllocator
$ git submodule update --init --recursive Externals/cubeb
$ git submodule update --init Externals/implot
$ git submodule update --init Externals/gtest
$ git submodule update --init Externals/rcheevos$ git pull --recurse-submodules
压缩备份
$ tar -zcvf dolphin_git_src_20230729.tar.gz dolphin/
备注:git clone到最后总是提示 curl什么错误,于是到自己买的1C1G1M服务器中克隆下载。
3. 编译
$ mkdir build && cd build
$ cmake ..
$ make -j8

问题:Could NOT find Qt6Svg
方法:sudo apt install libgl-dev libqt6opengl6-dev libvulkan-dev ninja-build pkg-config pkg-kde-tools qt6-base-dev qt6-base-private-dev zlib1g-dev libqt6svg6-dev
这里可以搜索到相关依赖:https://packages.ubuntu.com/source/kinetic/arm64/qt6-svg
问题:No SOURCES given to target: usb(若出现这个问题,需要删除build重新执行编译)
sudo apt install libusb-dev
sudo apt install libusb-1.0-0-dev
问题:No SOURCES given to target: curl
sudo apt install libcurl4-gnutls-dev
4. 运行测试
xxjianvm@xxjianvm-virtual-machine:~/work/dolphin/build/Binaries$ ./dolphin-emu
Warning: Ignoring WAYLAND_DISPLAY on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
An error occurred.Condition: icon.availableSizes().size() > 0File: /home/xxjianvm/work/dolphin/Source/Core/DolphinQt/Resources.cppLine: 53Function: LoadNamedIconIgnore and continue?
Illegal instruction (core dumped)
xxjianvm@xxjianvm-virtual-machine:~/work/dolphin/build/Binaries$
这个问题 在build目录下sudo make install 后解决。

参考:https://github.com/dolphin-emu/dolphin/wiki/Building-for-Linux
相关文章:
x86架构ubuntu22下运行WILL模拟器dophin
0. 环境 i5实体机ubuntu22 1. 安装依赖 $ sudo apt install build-essential git cmake ffmpeg libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libevdev-dev libusb-1.0-0-dev libxrandr-dev libxi-dev libpangocairo-1.0-0 qt6-base-private-dev libblueto…...
Jvm的一些技巧
反编译字节码文件 找到对应的class文件所在的目录,使用javap -v -p 命令 查询运行中某个Java进程的Jvm参数 【案例】查询 MethodAreaDemo 这个类运行过程中,初始的元空间大小 MetaspaceSize jps 查询 Java 进程的进程ID 使用jinfo查看具体的参数&…...
8.docker仓库
文章目录 Docker仓库本地私有仓库Docker HarborDocker harbor部署访问页面创建用户下载私有仓库镜像harbor同步 Docker仓库 本地私有仓库 ##先下载 registry 镜像docker pull registry##修改配置文件,在 daemon.json 文件中添加私有镜像仓库地址vim /etc/dock…...
价值 1k 嵌入式面试题-计算机网络 OSI
开门见山 请讲下 OSI 各层协议的主要功能? 常见问题 回答不系统回答不确切无法和实际网络协议做关联对应 答题思路 OSI 代表了开放互联系统中信息从一台计算机的一个软件应用流到另一个计算机的另一个软件应用的参考模型 OSI 包含 7 层,每一层负责特…...
spring boot去除get post空格
1.用ControllerAdvice处理 package com.wangzs.handler;import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationContext; import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; import org.springframewo…...
设计模式四:单例模式(Singleton)
单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。 通过单例模式可以保证系统中,应用该模式的类一个类只有一个实例。即一个类只有一个对象实例。 单例模式是设计模式中最简单的形式之一。这一模式的目的是使得类的一…...
《水经注地图服务》发布的影像数据如何在OsgEarth中调用
OsgEarth 是一个用于OpenSceneGraph (OSG)的可扩展地形渲染工具包,它是一个开源、高性能、3D 图形工具包。 只需创建一个简单的 XML 文件,将其指向您的图像、高程和矢量数据,将其加载到您最喜欢的 OSG 应用程序中,然后开始&#…...
css滤镜:drop-shadow
一、用法 drop-shadow( offset-x offset-y blur-radius spread-radius color ) offset-x:此参数设置图像的水平偏移。正值将创建右侧的偏移量,负值将创建左侧的偏移量。offset-y:此参数设置图像的垂直偏移。正值创建到底部的偏移量ÿ…...
java ThreadLocal
private ThreadLocal threadLocal new ThreadLocal(); threadLocal.set(0); (int) threadLocal.get(); 上面三行代码分别是定义、赋值和取值。 介绍: 我们只需要实例化对象一次,并且也不需要知道它是被哪个线程实例化。虽然所有的线程都能访问到这个T…...
MySQL高级篇第6章(索引的数据结构)
文章目录 1、为什么使用索引2、索引及其优缺点3、InnoDB中索引的推演4、MyISAM中的索引方案5、索引的代价6、MySQL数据结构选择的合理性 1、为什么使用索引 假如给数据使用 二叉树 这样的数据结构进行存储,如下图所示 2、索引及其优缺点 3、InnoDB中索引的推演 4、M…...
Unity 性能优化三:动画模块、物理模块
目录 动画模块 Mecanim 模块 1.1 Animator active的数量 1.1.1 Culling Mode 1.1.2 Optimize Gameobject 1.1.3 Apply Root Motion 1.1.4 Compute Skinning 1.1.5 Animator Initialize 1.2 Legacy动画 物理模块 2.1 物理更新次数 2.1 减少不必要的Collision 2.5 A…...
延迟函数
Destory函数: public static void Destroy(Object obj, [DefaultValue("0.0F")] float t); Invoke函数: public void Invoke(string methodName, float time); 挂个空物体测试一下: public class DelayTest : MonoBehaviour {…...
IBM报告:2023数据泄露平均成本将达到445万美元
7月24日,IBM发布年度《数据泄露成本报告》显示,2023年全球数据泄露的平均成本达到445万美元,创该报告有史以来最高纪录,较过去3年均值增长了15%。同一时期,检测安全漏洞和漏洞恶化带来的安全成本上升了42&a…...
20.3 HTML 表格
1. table表格 table标签是HTML中用来创建表格的元素. table标签通常包含以下子标签: - th标签: 表示表格的表头单元格(table header), 用于描述列的标题. - tr标签: 表示表格的行(table row). - td标签: 表示表格的单元格(table data), 通常位于tr标签内, 用于放置单元格中的…...
flutter项目运行时一直卡在Running Gradle task ‘assembleDebug‘解决办法
1.修改项目中的android/build.gradle,将google(),mavenCentral()替换为下面的代码 maven { url https://maven.aliyun.com/repository/central/ }maven { url https://maven.aliyun.com/repository/public/ }maven { url https://maven.aliyun.com/repos…...
“深入理解Spring Boot:从入门到精通“
标题:深入理解Spring Boot:从入门到精通 摘要: Spring Boot是一款用于简化Spring应用开发的框架,它提供了一系列的开箱即用的功能和自动化配置,使得开发者能够快速构建、部署和运行Spring应用。本文将从入门到精通&am…...
IP 工具
什么是IP 工具 IP 工具是用于轻松扫描和排除网络 IP 地址空间故障的网络工程工具。IP 工具使网络管理员能够审核、跟踪和监视 IP 地址、子网以及使用 IP 的设备和主机的性能。这个全面的网络工程工具集包括高级 IP 工具,如 Ping、系统资源管理器、MAC 地址解析器和…...
Linux - 进程概念(进程状态、优先级)
1.进程状态 操作系统中进程有多种状态模型 三态模型 进程状态分为 就绪态,执行态,阻塞态。 就绪(Ready)状态:指进程已处于准备好运行的状态,即进程已分配到除CPU以外的所有必要资源后,只要再获得CPU,便可立…...
k8s概念-deployment
deployment用于部署无状态应用 Deployment集成了上线部署、滚动升级、创建副本、回滚等功能 Deployment里包含并使用了ReplicaSet Replicaset 通过改变Pod副本数量实现Pod的扩容和缩容 参考文档 https://kubernetes.io/zh-cn/docs/concepts/workloads/controllers/deployment/ …...
Flutter 调试工具篇 | 壹 - 使用 Flutter Inspector 分析界面
theme: cyanosis 1. 前言 很多朋友可能在布局过程中、或者组件使用过程中,会遇到诸如颜色、尺寸、约束、定位等问题,可能会让你抓耳挠腮。俗话说,磨刀不误砍柴工,会使用工具是非常重要的,其实 Flutter 提供了强大的调试…...
uniapp 对接腾讯云IM群组成员管理(增删改查)
UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...
OpenLayers 可视化之热力图
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 热力图(Heatmap)又叫热点图,是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...
iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘
美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)
HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...
大语言模型如何处理长文本?常用文本分割技术详解
为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...
深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...
鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南
1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发,使用DevEco Studio作为开发工具,采用Java语言实现,包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...
CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)
漏洞概览 漏洞名称:Apache Flink REST API 任意文件读取漏洞CVE编号:CVE-2020-17519CVSS评分:7.5影响版本:Apache Flink 1.11.0、1.11.1、1.11.2修复版本:≥ 1.11.3 或 ≥ 1.12.0漏洞类型:路径遍历&#x…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
