Ошибка: Failed to open X11 display
Я пытаюсь установить программу тестирования (https://github.com/o-reo/push_swap_visualizer) на мой Microsoft Visual Code, работающий на wsl-ubuntu. Для этой программы-тестера требуются C++17, cmake, SFML и ImGui.
Я установил все кроме ImGui. Я не понял как его правильно установить в данный проект.
Когда я запускаю "cmake...", я получаю такое сообщение об ошибке:
Failed to open X11 display; make sure the DISPLAY environment variable is set correctly
Как решить эту проблему?
Ответы (1 шт):
Вам нужно установить в Windows X-сервер. Много где советуют, и я сам пользуюсь VcXsrv
По историческим причинам у меня установлена WSL первой версии. Поэтому мне достаточно в терминале задать две переменные окружения:
$ export DISPLAY=localhost:0.0
$ export LIBGL_ALWAYS_INDIRECT=1
и вуа-ля -- графическое приложение xterm отрисовывается в Windows.
Дабы узнать, какая у вас версия WSL, наберите в терминале команду
PS C:\> wsl -l -v
NAME STATE VERSION
* Ubuntu-18.04 Running 1
У вас, скорее всего, установлена вторая версия. WSL2 устроена как настоящая виртуальная машина с отдельной сетью, поэтому там нужно настраивать хитрее: https://stackoverflow.com/a/61110604/9047589
В любом случае вам нужно установить в терминале, где вы собираете приложение, переменную DISPLAY. Именно так графические приложения узнают о том, где находится графический сервер, отрисовывающий для них окошки и вообще всю графику.
