(我知道有很多关于这个主题的文档,但我要么经验不足,找不到有效的,要么我有一个与文档不同的问题(
我正在尝试加载一个简单的SDL包装器,它是我在Linux上的Mac上编写的(Lubuntu 20.04,LXQt 0.14.1(。然而,当调用SDL_Init(SDL_INIT_VIDEO)
时,会生成以下SDL_Error()
返回语句:No available video device
。我已经验证了我的DISPLAY
envvar设置为:0
(根据xterm
,这是正确的(,并且我的SDL_VIDEODRIVER
未设置。
将我的SDL_VIDEODRIVER
设置为x11会在初始化x11 not available
时触发此替代错误。
我很困惑,我能从中得出的唯一可能的结论是,我不知何故没有使用x11,或者这是错误的。
这里有一个触发此错误的最小示例:
#include <SDL2/SDL.h>
int main() {
SDL_Init(SDL_INIT_VIDEO);
printf("%sn", SDL_GetError());
}
我真的很感激能得到的任何帮助!
我正在使用SDL2 的libsdl2-dev
apt包
原来我在编译过程中忘记了链接X11,导致SDL_VIDEO初始化失败。这是通过使用-lX11解决的。
谢谢你的帮助!