Просто позвоните glGetString(GL_VERSION)
(разумеется, после инициализации контекста) и выведите результат (который, как я полагаю, фактически совпадает с glxinfo):
printf("%s\n", glGetString(GL_VERSION));
Ваша программа должна автоматически использовать максимально возможную версию поддержки вашего оборудования и драйверов, которая в вашем случае составляет 3.3. Но для создания контекста профиля ядра для OpenGL 3+ (тот, где устаревшая функциональность была полностью удалена), вы должны принять специальные меры. Но начиная с версии 2.7 GLFW имеет средства для этого, используя функцию glfwOpenWindowHint
. Но если вы не хотите явно запрещать устаревшую функциональность, вы можете просто использовать контекст, предоставленный вам функциями создания контекста по умолчанию GLFW, которые, как сказано, будут поддерживать максимально возможную версию для вашего оборудования и драйверов.
Но также имейте в виду, что для использования функциональности OpenGL выше версии 1.1 вам нужно получить соответствующие указатели на функции или использовать библиотеку, которая обрабатывает это для вас, например GLEW .