如何找到 glx 库名称?

How do I find the glx library name?

我正在尝试使用 glX 函数 (glXSwapIntervalMESA()),但编译器返回未定义的引用错误。

我已经尝试链接 X11Xext,以及 glx,尽管最后一个库显然不存在。 libGL includes some entry points for glx,但我猜其他人(例如我正在尝试使用的那个)依赖于平台*。

我找不到任何地方可以告诉我如何找到这些依赖于平台的库的名称。对于给定的系统,如何确定链接器设置以便使用 glx?

(*我猜是因为我看到了带有奇数库名称的示例链接器设置。)

您要使用的函数是一个扩展函数,您需要将它动态加载到一个函数指针中。我建议使用任何一个可用的扩展加载器库(glew、gl3w、glad...)来帮助简化这个过程。或者,考虑像 SDL 这样的更高级别的库,它可以为您处理很多事情,其中​​应该包括像本例中那样的交换。