Gtk-WARNING **: cannot open display问题的解决

2023-05-16

本博文为原创,遵循CC3.0协议,转载请注明出处:http://blog.csdn.net/lux_veritas/article/details/19244349

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------



1. SDL安装

2. ssh连接配置,x11forwarding


与VNC方式不同,qemu-kvm利用图形界面方式开启虚拟机,会以弹出窗口的方式与虚拟机交互。某些情况下,工作环境是通过各种term程序利用ssh登录到服务器,这时执行qemu的启动程序,通常会产生“Gtk-WARNING **: cannot open display”的错误。


造成这种情况的原因有很多,简单来说,服务器与本机环境之间要互相收发“图形界面”信息,两端要规定一种特殊的信息约定,用于编写和翻译图形界面信息,这就需要一个软件来完成这个特殊的编解码,此处一般为SDL,同时建立连接的程序还必须允许该软件在这个连接上可信。打个比方,两个国家间互相运输货物,货物必须经过拆解才能放上船,到达后根据双方约定可组装起来以供使用。同时,两国的海关需要允许货物出关和入关。此处,SDL即为双方的约定,ssh的安全机制为海关。


SDL是一个跨平台的多媒体图形声音界面库,开发者基于它开发上层图形界面程序,只需底层平台支持SDL库。简介:http://zh.wikipedia.org/wiki/SDL。项目主页:http://www.libsdl.org/。


针对以上的几个主要环节,任何一个环节出现问题,都会出现标题所示的提示信息。所以,采取各个击破的解决办法:

1. SDL安装问题,开发机与本机环境必须都支持SDL,在两台机器上正确安装或更新SDL程序

2. ssh开启X11Forwarding:

    linux下/etc/ssh/sshd_config中,添加 X11Forwarding yes

   

   

    本机客户端为一些桌面终端程序如Xshell,需要在ssh连接设置里面勾选X11forwarding选项:

   

   

    Mac系统需要安装X桌面X11-XQuartz(https://xquartz.macosforge.org/trac/wiki),在包括linux的使用X11的平台上,SDL基于Xlib而编写。某些时候需要保持ssh连接,所以在建立ssh连接时添加-Y选项或修改客户端/etc/ssh/ssh_config的ForwardX11Trusted yes,添加信任项。


至此,我的几种本机与服务器情况基于以上步骤都解决了。



本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Gtk-WARNING **: cannot open display问题的解决 的相关文章

  • GTK GUI 因 async/await 和 Progress 冻结

    我正在使用 GTK 构建 GUI 一些数据在后台处理 我想在用户界面上查看一些有关进度的信息 这是一些代码 演示了我尝试执行此操作的方式 using System using Gtk using System Threading Tasks
  • JSON 编码/解码 GTK 枚举

    我必须将自定义 GTK 元素的各种属性保存到文件中以供将来使用 并由于简单的格式和字典嵌套而决定使用 JSON 许多属性都是 GTK 枚举 例如gtk PAGE ORIENTATION PORTRAIT gtk ANCHOR CENTER
  • 使用 PRAW 在 Python 中从 Reddit API 解码 JSON

    我在 Python GTK 应用程序中使用 PRAW for Reddit API 我已经成功地使用了 API 但我似乎无法解码 JSON 以供使用 应该知道 我是Python和GTK应用程序的初学者 Mode Python coding
  • PyGObject GTK+ 3 - 文档?

    PyGObject 似乎没有真正的文档 本教程 http python gtk 3 tutorial readthedocs org en latest index html已经很接近了 我整个早上都在努力寻找对被接受的论点的描述Gtk W
  • 有哪些可用于 gtk+ 开发的 IDE [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 隐藏 SVG 会影响同一页面中的其他 SVG 样式

    SVG 在同一页面中加载多次 SVG 用于显示值的图形表示 想象一张地图 其中每个区域都使用颜色代码显示给定值 在每个 SVG 中 每个区域都会动态应用 CSS 类来匹配所需的 SVG 图案填充 CSS 样式和模式在 SVG 文件中定义 这
  • 如何隐藏 Windows Gtk 应用程序的命令提示符?

    我正在使用 MinGW 工具链在 Windows 中编译 Gtk 应用程序 但是当我运行我的应用程序时 会出现一个命令提示符窗口 怎样才能让这个提示消失呢 Check 本文 http ricardo ecn wfu edu cottrell
  • 如何将一个独立的窗口定位在屏幕上的精确位置?

    我实际上正在开发一个相对复杂的 GTK 2 应用程序 我的应用程序显然有一个主窗口 然后我需要打开一个新的 独立 窗口 我需要将 飞行 窗口放在 中precise屏幕的准确位置 在顶点 of a widget 绘图区域 我需要将新窗口放置在
  • meld - gi.glib.GError:主题中不存在图标“meld-change-apply-right”。安装有什么问题吗?

    我已经成功安装了 meld 3 14 2 和所有依赖包 通过从源代码编译每个包 并且所有包都安装在 NFS 共享上 prefix meld对于融合工具 prefix meld deps对于依赖项 最后 我调用了该工具 我可以看到 GUI 但
  • 如何使用 GStreamer 和 XOverlay 在 GTK+ 应用程序窗口中嵌入视频?

    我正在尝试使用 GTK 和 GStreamer 编写一个小型媒体播放器 目前使用 XOverlay 接口将视频嵌入到 GtkDrawing 区域中INSIDE主窗口 该程序是使用以下命令编译的 g home phongcao cacao c
  • GTK+ CSS 一键式

    如何在 GTK 中为一个按钮设置颜色 GtkButton button8 border radius 20 border width 1 1 1 1 font Sans 16 color black background image gtk
  • 如何在 C# 中使用 GtkBuilder 连接林间空地信号?

    在Python中 我可以这样做builder connect signals self C 中好像不存在这个方法 看了之后GtkBuilder 文档 http library gnome org devel gtkmm unstable c
  • GTK+ (2.0) - GtkEntry 上的“点击”信号?

    我正在使用 GTK 2 0 测试一些信号 我正在寻找一种在单击 GtkEntry 时发出信号的方法 if widgets info i action IG INPUT widget gt frame i gtk entry new with
  • 如何从 GTK Builder 检索对象的名称? [复制]

    这个问题在这里已经有答案了 如何获取从 Builder 对象检索的 Gtk Widget 的名称 我特指的是在 Glade 中看到的名字 例如 button1 而不是类的名称 GtkWindow 这个问题与this one https st
  • 在 GtkGrid c 中插入空行

    如何在 GtkGrid 中保留空行 我想创建一个带有按钮的 gtkgrid 如示例所示 0 1 2 3 0 button2 button1 1 button3 2 button4
  • html 中字体标签的最佳替代品

    自从fontHTML 中的标签在 HTML5 中已被弃用 我明白为什么 是否有一个干净的解决方案可以将某些属性和样式仅应用于portions段落文本 我正在使用 JavaScript 来解析 XML 文件 该文件依赖于以下事实 font标签
  • 在 Windows 上安装 MonoDevelop:满足 Gtk# 要求的解决方法?

    我已经安装了Mono 版本2 11 4 在我的Windows 7系统上 现在我打算安装单一开发 版本 3 0 4 7 然而 当我开始单一开发安装程序我收到以下错误消息 并且安装终止 好的 这可以通过获取轻松解决Gtk 安装程序来自here
  • PyGTK:带线程的 gobject.idle_add() 和 timeout_add()

    是否有任何明确的文档说明idle add timeout add 和 或它们安装的实际回调是否需要锁 任何类型 def work args 1 gtk gdk threads enter needed self ui change some
  • Python GTK 信号处理程序不工作

    我正在使用 GTK 为 GUI 编写一个 Python 应用程序 我注意到从终端使用 Ctrl C 关闭它不起作用 我发现这是因为一个错误 所以我尝试手动处理该信号 问题是 如果我将默认行为设置为默认行为 则会捕获信号并正确关闭应用程序 但
  • 在 Ubuntu 上用 C 项目编译和链接 GTK 3

    我相信这不是重复的问题 在发布此问题之前我已经看过所有问题 答案 我想我这里的情况有所不同 我使用Ubuntu 12 04并下载GTK 2 和 3 我从 GNOME 网站复制了一个简单的 GTK 源代码 但是当我在终端中使用这个命令时 gc

随机推荐

  • 最佳实践:AtomicInteger实现边界值控制

    最佳实践 xff1a AtomicInteger实现边界值控制 前言 这篇文章主要讲两部分 xff0c 一部分简单的讲了一下AtomicInteger和LongAdder的实现对比 xff0c 这部分不会讲太细 xff0c 因为有更好的文章
  • Java多线程并发锁和原子操作,你真的了解吗?

    前言 对于Java 多线程 xff0c 接触最多的莫过于使用synchronized xff0c 这个简单易懂 xff0c 但是这synchronized并非性能最优的 今天我就简单介绍一下几种锁 可能我下面讲的时候其实很多东西不会特别深刻
  • Huawei 鲲鹏(ARM/Aarch64)服务器安装kvm虚拟机

    硬件 类别 项目 要求 硬件 服务器 TaiShan 200服务器 xff08 型号2280 xff09 CPU 鲲鹏920处理器 RAID卡 Avago 3508 操作系统 项目 要求 银河麒麟 银河麒麟高级服务器操作系统V10 部署KV
  • 我的六年程序之路

    以前看刘未鹏的 我在南大的七年 xff0c 就在感叹每个人的人生迥异 和大牛之间的差距加重了我对自己的卑微 写下这篇日志一方面是为了记录我这和计算机的六年 xff0c 也是缅怀过去 xff0c 反思自己 或许大部分程序员有着一样的迷茫和困惑
  • 深入探析Java线程锁机制

    今天在iteye上提了一个关于 43 43 操作和线程安全的问题 xff0c 一位朋友的回答一言点醒梦中人 xff0c 至此我对Java线程锁有了更加深刻的认识 在这里也做个总结供大家参考 先看几段代码吧 xff01 代码一 xff1a p
  • 喇叭发声原理

    喇叭发声原理 音频设备中负责发出声音的核心部件是扬声器 xff0c 俗称喇叭 xff0c 无论是音响还是耳机 xff0c 其中都少不了这个关键部件 扬声器是一种把电信号转变为声信号的换能器件 喇叭 下面这个喇叭的侧视图能够很好的帮我们了解喇
  • win7 开WiFi共享

    创建 xff08 cmd xff09 xff1a netsh wlan set hostednetwork mode 61 allow ssid 61 user key 61 12345678 在网络连接 本地连接 属性 共享 xff1a
  • 《JAVA开发日常问题》一、修改IDEA路由代码不生效

    一 问题出现 1 重新启动过IDEA xff0c 没有关闭之前的项目 2 重新打开IDEA修改路由代码 xff0c 新增了个路由接口 xff0c 怎么访问都不成功不生效 二 问题排查 1 最开始百度了下 xff0c 说可以删除 idea文件
  • 数据仓库【实时数仓】

    目录 1 数据仓库简介 2 数据仓库的发展 3 数据仓库建设方法论 3 1 面向主题 3 2 为多维数据分析服务 3 3 反范式数据模型 4 数据仓库架构的演变 4 1 离线大数据架构 4 2 Lambda 架构 4 3 Kappa 架构
  • java.lang.IllegalStateException解决合集

    1 跑monkey时报错 xff0c 只定位到了是哪一个模块出的问题 xff0c 但没有定位代码位置 xff0c 大概是指Handler的问题 java lang IllegalStateException The specified me
  • 利用SWIG对C++库进行Python包装

    最近因为项目要求 xff0c 所以大致看了一下swig xff0c 在网上找到一篇不错的文章 xff0c 转载之 xff01 也为自己以后备着 xff01 本文转自http techblog 99fang com p 61 17 利用SWI
  • spring启动过程的追踪(七)——@Autowired注解生效时机、spring创建对象doGetBean方法详细解析、spring三级缓存解决循环依赖

    spring创建Bean得过程非常复杂 xff0c 本文将分段进行解析 xff0c 尽量阐述更加清晰 1 finishBeanFactoryInitialization beanFactory spring创建得单实例对象 xff0c 大部
  • 接口自动化测试接口报405,怎么解决?

    一 405状态码含义 405 Method Not Allowed 解释 xff1a 发起的请求中带有所请求的URL不支持的方法时 xff0c 使用此状态码 应该在响应中包含Allow首部 xff0c 以告知客户端所请求的资源可以使用哪些方
  • 【系统救援】Ubuntu - end Kernel panic - not syncing : VFS: Unable to mount root fs on unknown-block(0,0)

    问题 现象一 xff1a end Kernel panic not syncing VFS Unable to mount root fs on unknown block 0 0 mysql突然访问不上了 xff0c 发现mysql服务宕
  • windows下C++学习推荐书籍

    推荐几本书给你们 xff0c 有空可以学习一下 xff1a C 43 43 编程相关 xff1a 1 C 43 43 Primer xff1a C 43 43 的工具书 2 Effective C 43 43 xff1a C 43 43 提
  • Lottie动画 轻松使用

    Android 敏捷开发助手 Lottie动画 轻松使用PNG JPG等普通图片高保真转SVG图Android 完美的蒙层方案Android MMKV框架引入使用强大无匹的自定义下拉列表Google Protobuf 实践使用开发 Andr
  • BottomNavigationView使用超过三个item点击无效果

    目录 解决方案一 解决方案二 在Android开发中经常碰到一些坑 xff0c 让自己忙碌很久才发现哪个地方出现了问题 其实可能都是难以发现的小细节和小疏漏 xff0c 就会造成你无尽的麻烦和浪费时间 我总结下开发中碰到的问题 xff0c
  • Ubuntu 添加 chrome 浏览器

    在ubuntu中使用chrome浏览器 包括安装和配置等 文章目录 chrome 安装屏蔽百度热搜卸载 chrome 安装 chrome的安装和edge类似 xff0c 在官网下载 deb 安装包 xff0c 然后执行 span class
  • Blazor Server 的登录与退出(二)

    上篇已经实现了登录与退出的主服务类 xff0c 其他还需要一些具体的东西 1 引用Blazored LocalStorage包 xff1b 2 新建JwtOption类 xff1a public class JwtOption public
  • Gtk-WARNING **: cannot open display问题的解决

    本博文为原创 xff0c 遵循CC3 0协议 xff0c 转载请注明出处 xff1a http blog csdn net lux veritas article details 19244349 1 SDL安装 2 ssh连接配置 xff