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问题的解决 的相关文章

  • C# Mono Linux - 抓取全局剪贴板的内容

    我试图简单地从剪贴板 抓取 文本并将其放入变量中 我在做这件事时遇到了很多麻烦 我尝试过使用 Gtk Clipboard Get Gdk Atom Intern PRIMARY true 到目前为止 我的代码只是将 Gtk Clipboar
  • 使用 vala 将 uris 插入 Gtk.Clipboard

    我目前正在尝试为我的应用程序实现复制和粘贴 问题是我只能根据文档将纯文本或图像复制到剪贴板Gtk Clipboard https valadoc org gtk 3 0 Gtk Clipboard html https valadoc or
  • 如何使图像高度适合并置文本高度

    我有一个图像和一个并排的文本 图像在左边 文本在右边 关于如何根据文本段落高度 以及宽度与高度保持比例 调整图像高度的任何想法 而不是将文本环绕在图像周围 这是我所能做到的 div style display table width 100
  • 如何在 KDE 上强制/开始使用 Java 中的 GTKLookAndFeel?

    首先 使用 gnome 不是一个选项 但可以安装它的库 我需要知道使用当前安装的 KDE 外观和 KDE 感觉来显示 Java Swing 桌面应用程序需要什么 理想情况下 该解决方案应该允许我应用看起来像底层窗口系统的外观和感觉 即 用于
  • 如何针对 gtk 3 库运行 javaFx 应用程序?

    如何强制 javaFx 应用程序使用 gtk3 库 我知道SWT允许设置SWT GTK3 1用于此目的的环境变量 javaFx 是否有类似的可能性 解决方法 新功能 8087516 对 Linux 上的 GTK 3 有条件支持 https
  • 如何在 C# 中使用 GtkBuilder 连接林间空地信号?

    在Python中 我可以这样做builder connect signals self C 中好像不存在这个方法 看了之后GtkBuilder 文档 http library gnome org devel gtkmm unstable c
  • mkbundle 和 GTK#

    我正在尝试使用 mkbundle 以便我可以分发 GTK 应用程序 而无需用户安装 NET Mono 或 GTK 我已经成功捆绑了一个使用 winforms 的应用程序 但由于某种原因 当我对 GTK 应用程序执行相同操作时 它无法工作 这
  • 如何舍入仅在 pandas 中显示的值,同时保留数据框中的原始值?

    当我使用 head 或 tail 时 我希望仅对 DataFrame 中的值进行舍入以用于显示目的 但我希望 DataFrame 保留原始值 我尝试使用 round 方法 但它改变了原始 DataFrame 中的值 我不希望每次都为此目的创
  • Python GTK 信号处理程序不工作

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

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

    我需要确定 Ubuntu 上安装了哪个版本的 GTK 男人似乎不帮忙 这个建议 https stackoverflow com a 126145 会告诉您安装了哪个 2 0 的次要版本 不同的主要版本将具有不同的包名称 因为它们可以在系统上
  • Ubuntu 12.10 libgtk-3-0 缺少符号

    我正在运行 Ubuntu 12 10 不知何故我的 libgtk 3 0 搞砸了 当尝试运行许多不同的应用程序时 我收到如下错误 gedit symbol lookup error usr lib libgtk 3 so 0 undefin
  • Go 编译器有窗口化设置选项吗?

    我正在使用 Go 6g 编译 GTK 应用程序 我想知道是否有编译器 链接器选项使其成为 Windows 可执行文件而不是控制台可执行文件 MinGW 有一个 mwindows 选项来实现此目的 目前我必须使用十六进制编辑器手动更改 PE
  • “gi.repository.Gtk”对象没有属性“gdk”

    我正在尝试使用 GTK 创建多线程 需要 Gtk gdk 但我收到有关没有 gdk 属性的错误 我正在使用带有 Raspbian 的 Raspberry Pi 这就是我导入 GTK 库的方式 try import pygtk pygtk r
  • 在 GTK+ 应用程序中拖动滚动

    我正在开发一个 GTK 应用程序 它使用 goocanvas 在屏幕上显示图形 我在想出实现拖动滚动的好方法时遇到问题 目前 应用程序保存用户单击的坐标 然后在 运动通知 信号回调中 执行 goo canvas scroll to 到新位置
  • 将glade接口放入python中

    我在 Glade 中制作了一个 gui 我想将其放入 python 程序中 我正在调整我在网上找到的教程中的说明 以将其加载到我的林间空地文件中 http www pygtk org articles pygtk glade gui Cre
  • Python GTK3 Treeview 向上或向下移动选择

    如何在树视图中向上或向下移动所选内容 我的想法是 我可以使用向上和向下按钮将选择向上移动一行或向下移动一行 我的 Treeview 使用 ListStore 不确定这是否重要 首先 我将使用我熟悉的 C 代码 如果您在将其翻译为 Pytho
  • 在菜单中显示 gtk.Calendar?

    我想构建一个上下文菜单 其中包含用于选择日期的菜单项 用例是在树视图中选择一堆项目 然后为所有项目设置新的截止日期 由于菜单项是 Gtk Bin 因此我可以指定任何小部件来代替标签 然而 我似乎无法interact与小部件 如果我单击菜单上
  • 用 C 语言用 gtk 编写 GUI 程序时如何摆脱控制台?

    我正在遵循教程 http zetcode com tutorials gtktutorial firstprograms http zetcode com tutorials gtktutorial firstprograms 它可以工作
  • 如何(以编程方式)滚动到 gtktextview/gtksourceview 中的特定行

    我正在创建一个文本编辑器 作为更加熟悉 C 和 gtk 的一种方式 我正在使用 gtk 2 0 和 gtksourceview 2 0 和 gtk scrolled window 作为创建 goto 函数浏览器的第一次尝试 我想我只需创建文

随机推荐

  • 最佳实践: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