我正在开发一个在 linux 上创建虚拟操纵杆的小程序,带有 python 前端。它是Linux-Virtual-Joystick的一个分支。
我需要写入 dev/uinput 以创建用户定义的操纵杆。该文件使用 O_RDWR 打开(我在调试时临时添加了其他文件的读/写访问权限)。当我做
write(uifd, &uidev, sizeof(uinput_user_dev));
它返回 -1 并将 errno 设置为 22(EINVAL)。参数正确,文件已成功打开。
有没有其他人遇到过这个问题?我将这个项目搁置了大约一个月,但我记得它在 Ubuntu 的最新版本中工作。
更新: uinput 适用于 ubuntu 12.10