我正在研究SDL2应用程序。现在,我尝试在未安装X11的Raspberry PI(Zero W)上运行Raspbian Stretch Lite。
我从here之类的来源构建并安装了SDL2。
使用了以下配置标志:
./configure \
--disable-pulseaudio \
--disable-esd \
--disable-video-mir \
--disable-video-wayland \
--disable-video-x11 \
--host=arm-raspberry-linux-gnueabihf \
现在,我可以编译并运行我的应用了。它会以全屏模式正确显示主屏幕。
但是它无法收到任何预期的键盘或鼠标事件。
我假设我错过了SDL2构建配置中的某些内容。 如何在应用程序中启用鼠标和键盘?
答案 0 :(得分:3)
通常,默认情况下,通常禁止常规用户直接读取/dev/input/*
文件,这是在原始Linux帧缓冲控制台上运行SDL的方式。
来自the SDL docs (README-raspberrypi.md
):
================================================================================
No input
================================================================================
Make sure you belong to the "input" group.
sudo usermod -aG input `whoami`
或以root用户身份运行程序。
答案 1 :(得分:0)
问题已解决,方法是按照@genpfault的说明附加一个组并安装libudev-dev
然后重建SDL。