当前位置: 首页 > 知识库问答 >
问题:

SDL2:无法创建窗口:没有可用的视频设备

冀弘厚
2023-03-14

我正在运行Ubuntu20.04并尝试使用SDL2库构建一个C++程序。我是从apt安装库的,所以没有自己编译它。我也在用CMAKE。

问题是我无法运行该程序,因为它报告了一个错误:

无法创建窗口:没有可用的视频设备

我读过这个,这个和更多的链接,但没有一个工作。我已经安装了:

  • xorg-dev
  • libx11-dev
  • libGL1-mesa-glx
  • libsdl2-dev

(使用sudo apt安装xorg-dev libx11-dev libgl1-mesa-glx libsdl2-dev。)

共有1个答案

仇炜
2023-03-14

如果未设置display环境变量,您可以将其与应用程序命令一起内联设置

DISPLAY=:0.0 ./yourApp

或者将其永久设置在执行应用程序的控制台中:

export DISPLAY=:0.0
./yourApp

要从CMake设置环境变量,可以使用CMake set命令set(ENV{DISPLAY}:0.0)

 类似资料:
  • 我知道在摇摆中,您可以使用父窗口打开子窗口/对话框/框架,并且子窗口将具有与父窗口相同的属性,例如共享左上角的徽章。JavaFX 8中是否有任何类似的功能?这会创建一个新窗口,但没有任何共享信息的父窗口(甚至可以关闭父窗口,而子窗口不会关闭): 注意:我已经阅读了JavaFX2.0FXML子窗口和JavaFXOpenNewWindow。

  • 我试图从覆盆子派流视频使用aws kinesis视频流。我们在Aws站点上使用了C++sdk(https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp) [错误][19-04-2020 19:20:33:859.598 GMT]createKinesisVideoStreamSync():未能创建Kinesis

  • 译注 注意,由于作者对教程做出了更新,之前本节使用的是GLEW库,但现在改为了使用GLAD库,关于GLEW配置的部分现在已经被修改,但我仍决定将这部分教程保留起来,放到一个历史存档中,如果有需要的话可以到这里来查看。 在我们画出出色的效果之前,首先要做的就是创建一个OpenGL上下文(Context)和一个用于显示的窗口。然而,这些操作在每个系统上都是不一样的,OpenGL有目的地从这些操作抽象(

  • 我有以下传输视频的管道: 发件人: gst-launch-1.0 rpicamsrc预览=0!'视频/x-h264,宽度=1280,高度=720,帧速率=15/1,轮廓=高'!队列RTPH264支付!udpsink主机=192.168.0.8端口=50000 收件人: gst-launch-1.0 udpsrc端口=50000 caps=“应用程序/x-rtp,媒体=(字符串)视频,时钟速率=(i

  • 是否可以创建没有背景或窗口的ImGui屏幕?它只是可以在屏幕上拖动的ImGui窗口。它看起来像这样,但不是蓝色背景,您只会看到它下面的应用程序。

  • 我试图为流星应用程序创建一个5.1.1的Android模拟器。到目前为止,我一直在遵循这些步骤,但是当我试图创建时,我得到消息“没有CPU/ABI系统映像可用于此目标”。 我搞砸了吗? 使现代化 我不确定它是否重要,但是当我打开SDK时,我得到了这些信息: 吸引人https://dl.google.com/android/repository/addons_list-2.xml 成功获取加载项列表