반응형

작성 동기

WSL2 상에서 JMAVSIM을 띄워보려하는데 가시화가 안되서 찾다가 정리한다.
https://docs.px4.io/master/en/dev_setup/dev_env_windows_bash_on_win.html
위의 PX4 문서를 보면, Xming을 설치한 후, bash shell에서 다음을 설정하면 보인다고 하는데..

export DISPLAY=:0
$ make px4_sitl jmavsim
    ...
Starting GUI...
Exception in thread "main" java.lang.reflect.InvocationTargetException 
Caused by: java.awt.AWTError: Can't connect to X11 window server using ':0' as the value of the DISPLAY variable. 
    ... 5 more

위와 같이 오류가 나오면서 DISPLAY로 :0를 잡을 수 없다고 나온다.

Windows 10 에서

1. Xming 설치하기

https://sourceforge.net/projects/xming/
다 설치하고 끄자.

2. Xming 실행 속성 수정하기

그냥 실행하면 잘 안된다...
예를 들어 X Window 작동 확인을 위해 xeyes를 실행해보면 다음과 같이 나온다.

$ xeyes
No protocol specified
Error: Can't open display: IP_ADDRESS:0

아래 그림처럼 실행 바로가기 파일에 실행 명령어 뒤에 '-ac'를 붙여준다.

바로가기 대상에 추가되는 문구는 다음과 같다.

:0 -clipboard -multiwindow -ac

 

3. Xming 방화벽 설정

Xming 의 Windows 방화벽 허용 - Windows Powershell을 관리자 권한으로 켠 후,
방화벽 허용을 하고, 되어있는지 확인한다.

Set-NetFirewallRule -DisplayName "Xming X Server" -Enabled True -Profile Any
New-NetFirewallRule -DisplayName "Xming X Server" -Enabled True -Profile Any

4. -ac 설정한 Xming 실행하기

실행하자.

WSL 에서

1. x11 패키지와 폰트 설치하기

sudo apt -y install x11-apps xfonts-base xfonts-100dpi xfonts-75dpi xfonts-cyrillic

2. WSL에서 DISPLAY 출력 IP 지정해주기

WSL을 켜고 bash shell에서 다음을 입력하여 주소를 설정해준다.
이는 echo $DISPLAY를 입력하여 입력된 주소를 확인할 수 있다.

export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0

3. X window 작동 확인하기

WSL bash shell 에서 xeyes 라던지, xclock을 실행해보자.

Troublemshooting

canvas = me.drton.jmavsim.Visualizer3D$CustomCanvas3D\[canvas0,0,0,0x0,invalid\] X11Util.Display: Shutdown (JVM shutdown: true, open (no close attempt): 1/1, reusable (open, marked uncloseable): 0, pending (open in creation order): 1) X11Util: Open X11 Display Connections: 1 X11Util: Open\[0\]: NamedX11Display\[---------:0, 0x7f31a0030960, refCount 1, unCloseable false\]

Reference

https://blog.wslhub.com/windows-10%EC%97%90%EC%84%9C-%EB%A6%AC%EB%88%85%EC%8A%A4%EC%9A%A9-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8-%EC%84%A4%EC%B9%98%ED%95%98%EA%B3%A0-%EC%8B%A4%ED%96%89%ED%95%98%EA%B8%B0-2cb0d7892d12

https://evandde.github.io/wsl2-x/

https://superuser.com/questions/1476086/error-cant-open-display-0

https://superuser.com/questions/1476086/error-cant-open-display-0

728x90

+ Recent posts