运行 OpenGL 应用程序时出现 X11 错误 BadRequest
我为我正在为 ARM 设备构建的自定义 Linux 编译了 Xorg。我正在尝试使用 EGL 和 Qt 框架来运行 OpenGL 应用程序,但我收到这些错误:
X Error: BadRequest (invalid request code or no such operation) 1
Extension: 198 (Uknown extension)
Minor opcode: 0 (Unknown request)
Resource id: 0x600082
并且这个:
X Error: BadRequest (invalid request code or no such operation) 1
Extension: 160 (Uknown extension)
Minor opcode: 0 (Unknown request)
Resource id: 0x600082
重复了很多次。这意味着什么?我该如何调查问题所在?使用 OpenGL 在屏幕上正确绘制了某些内容,但之后一切都搞砸了。 我的 Xorg 中似乎缺少了某些内容,但我找不到有关这些扩展 198 和 160 的任何信息。如何找出缺少的内容或出了什么问题?我是否必须编译任何特定内容才能运行 X11 的 OpenGL 应用程序? 谢谢!
I compiled Xorg for a custom Linux I'm building for an ARM device. I'm trying to run OpenGL applications using EGL with the Qt framework but I get these errors:
X Error: BadRequest (invalid request code or no such operation) 1
Extension: 198 (Uknown extension)
Minor opcode: 0 (Unknown request)
Resource id: 0x600082
and this:
X Error: BadRequest (invalid request code or no such operation) 1
Extension: 160 (Uknown extension)
Minor opcode: 0 (Unknown request)
Resource id: 0x600082
repeated many times. What does this mean? How can I investigate on what is wrong? Something is drawn on the screen correctly with OpenGL, but after that everything is screwed up.
It seems like something is missing in my Xorg, but I can't find anything about these extensions 198 and 160. How does one figure out what is missing or anyway what is wrong? Do I have to compile anything specific to be able to run OpenGL applications for X11?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
扩展号码由 X 服务器根据特定代码库中支持的扩展以及特定配置中启用的扩展动态分配。要获取当前显示屏上的分机名称到号码映射的列表,您可以运行 xdpyinfo -queryExtensions | grep opcode — 为每个操作列出的操作码值应与 Xlib 错误报告中的扩展号相匹配。如果没有一个扩展匹配,那么您可能出现了内存损坏,或者在没有首先验证扩展在 X 服务器中当前是否可用的情况下调用了扩展。
The extension numbers are dynamically assigned by the X server based on the extensions supported in a particular codebase and enabled in a particular configuration. To get a list of the extension name to number mappings on the current display, you can run
xdpyinfo -queryExtensions | grep opcode
— the opcode value listed for each one should match the extension number in Xlib error reports. If none of the extensions match, then it seems likely you've got memory corruption or are calling an extension without first verifying it's currently available in the X server.