Ошибка libGL с целью Linux для OpenFL
Я планирую заняться разработкой игр с Haxe, используя цель C++, и для этого я выбрал инфраструктуру HaxeFlixel, которая использует OpenFL в качестве бэкэнда. Тест "Привет, мир!" Отлично работает с Flash, HTML5, кажется, работает (без звука), хотя я не планирую использовать ни один из них, так как игра, которую я хочу создать, будет настольной игрой, которая будет работать изначально.
Тем не менее, когда я попытался запустить пример hello world с HaxeFlixel с целью, установленной на native linux, тестовая программа вылетала при запуске и выдавала мне следующие ошибки:
libGL: screen 0 does not appear to be DRI2 capable
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
libGL: Can't open configuration file /home/zauber/.drirc: No such file or directory.
libGL error: failed to load driver: swrast
X Error of failed request: GLXUnsupportedPrivateRequest
Major opcode of failed request: 153 (GLX)
Minor opcode of failed request: 16 (X_GLXVendorPrivate)
Serial number of failed request: 211
Current serial number in output stream: 213
Я в растерянности относительно того, как решить проблему. Я никогда не видел ничего подобного, и все другие 3D-программы и игры, с которыми я работал, просто отлично работают. Я спрашивал на форумах HaxeFlixel, но мне только сказали, что это может быть ошибка в OpenFL. Похоже, это так, поскольку у меня та же проблема с Awe6, еще одной игровой платформой, использующей OpenFL.
Я выполнил поиск в Google для похожих проблем, но ничего не нашел. У меня уже есть все соответствующие библиотеки, которые у меня должны быть (mesa, драйверы nVidia, dri2, 32bit libs), и все найденные мной решения в значительной степени указывают на установку конкретной библиотеки, которую я уже установил.
До сих пор я задавал вопросы как на форумах OpenFL, так и на канале IRC, и в обоих случаях меня полностью игнорировали. Мне действительно нужно решить эту проблему, потому что, если я этого не сделаю, я не смогу продолжить свой проект gamedev.
Для справки, моя система работает под управлением 64-битной Linux Mint 16, ядра Linux 3.11.0-12 и драйверов nVidia 319.32
1 ответ
Для справки, моя система работает под управлением 64-битной Linux Mint 16, ядра Linux 3.11.0-12 и драйверов nVidia 319.32
Тогда что-то в конфигурации вашей системы полностью испорчено: по какой-то причине ваша программа загружает libGL.so
обеспечивается драйверами Mesa вместо драйверов NVidia libGL.so
, Контрольный признак в том, что загруженный libGL
жалуется на недоступность DRI2. Фирменные драйверы NVidia не используют и не поддерживают DRI2. DRI2 - это API-интерфейс отслеживания состояния низкого уровня Mesa.
Убедитесь, что ваша система правильно настроена. Самое главное, убедитесь, что ни одна из библиотек, фреймворков и т. Д., Которую вы используете, не сделала что-то глупое, например, связывание libGL.so
,