xeyes를 작동시키려면 어떻게 해야 합니까? - 로컬 시스템의 XQuartz에 오류가 표시됩니다.

xeyes를 작동시키려면 어떻게 해야 합니까? - 로컬 시스템의 XQuartz에 오류가 표시됩니다.

다음 웹사이트에서 제공되는 다운로드를 사용하여 Mac(Big Sur, v.11.5.2)에 XQuartz를 설치했습니다.https://www.xquartz.org/(XQuartz-2.8.1.dmg) 인데, 아직 사용해보지 못했습니다. 지난 몇 주 동안 이 문제를 해결할 수 없었으며 누군가가 제게 올바른 방향을 알려줄 수 있기를 바랍니다.

xeyes를 사용하여 설치를 테스트했는데 다음과 같은 응답을 받았습니다.

(base) magnoliafork ~ % xeyes                            
Error: Can't open display: :0.0
(base) magnoliafork ~ % echo "$DISPLAY"
:0.0

내가 이 문제를 해결하려고 시도한 방법 중 하나는 내 파일을 DISPLAY내부적 .zshrc으로 로 설정하고 숫자 만 :0. 또한 내 IP 주소를 앞에 입력해 보았습니다 . 이러한 솔루션 중 어느 것도 작동하지 않습니다.localhost=00:0.0

##### DISPLAY, for plotting
PATH="/opt/:$PATH"
export DISPLAY
DISPLAY=":0.0"

다른 스레드의 누군가가 파일의 기본 옵션 변경을 제안했기 sshd_config때문에 X11 옵션을 다음과 같이 업데이트했습니다.

#AllowAgentForwarding yes
#AllowTcpForwarding yes
#GatewayPorts no
X11Forwarding yes
X11UseForwarding yes
X11DisplayOffset 10
X11UseLocalhost yes
#PermitTTY yes
#PrintMotd yes
#PrintLastLog yes
#TCPKeepAlive yes
#PermitUserEnvironment no
#Compression delayed
#ClientAliveInterval 0
#ClientAliveCountMax 3
#UseDNS no
#PidFile /var/run/sshd.pid
#MaxStartups 10:30:100
#PermitTunnel no
#ChrootDirectory none
#VersionAddendum none

여전히 작동하지 않습니다. 이전 솔루션은 XQuartz가 로컬에서 작동하지만 SSH를 통해서는 작동하지 않는 상황을 수정하는 것이었던 것 같습니다. 로컬에서 작동하도록 할 수도 없고 이 시점에서는 다음에 무엇을 시도해야 할지 모르겠습니다. 어떤 아이디어라도 매우 도움이 될 것입니다!

이것이 도움이 될지는 모르겠지만 콘솔에서 다음을 복사했습니다.

X11.app: do_start_x11_server(): argc=7
     argv[0] = /opt/X11/bin/Xquartz
     argv[1] = :0
     argv[2] = -nolisten
     argv[3] = tcp
     argv[4] = -iglx
     argv[5] = -auth
     argv[6] = /Users/magnoliafork/.serverauth.2211

의견에 대한 추가 정보:

  • Apple 터미널에서 xeyes를 실행하면 XQuartz 아이콘이 팝업되지 않습니다.
  • 해당 명령을 사용하여 Apple 터미널에서 XQuartz를 직접 실행하려고 하면 xquartzXQuartz 아이콘이 나타난 다음 Apple로부터 "리스닝 소켓을 설정할 수 없습니다. X 서버가 아직 실행되고 있지 않은지 확인하세요"라는 문제 보고서를 받습니다.
  • XQuartz 터미널 "xterm"에서 xeyes를 실행할 수 있지만 Apple 터미널이 더 강력하기 때문에 정말 선호합니다.

답변1

참고: Finder(및 관련 응용 프로그램)와 터미널에서 실행되는 바이너리를 명확하게 구별하기 위해 다음을 사용합니다.용감한그리고 code formatting각각.


두 가지 문제가 있는 것 같습니다.

  • 터미널에서 XQuartz 설치를 시작하세요.
  • DISPLAY환경 변수를 올바르게 설정하십시오.

첫 번째 문제는 당신이 설치했다는 것입니다X 석영.dmgvia 대신 a를 사용하여 brew설치하십시오.발견자. 이는 Finder를 통해 또는 다음을 사용하여 명령줄에서 수행해야 함을 의미합니다.

$ /Applications/Utilities/XQuartz.app/Contents/MacOS/X11 &

노트:내 XQuartz 버전은반품를 통해 설치되었습니다 . 아마도 이로 인해 를 통해 XQuartz를 시작하는 데 사용할 수 있는 명령이 .dmg없는 것 같습니다.xquartz단말기X11- 따라서 내부에서 바이너리를 사용합니다.X 석영응용 프로그램 패키지.


xeyes이제 다음 인스턴스에서 실행을 시도하는 것 같습니다.단말기xterm내부에서 실행하는 대신 애플리케이션X 석영, 해결책은 간단합니다.

당신은 DISPLAY당신 의X 석영그리고 그것을 DISPLAY당신 에게 할당하세요단말기애플리케이션.

첫 출시X 석영다음 중 하나에서발견자, 또는 위에서 지정한 명령줄을 사용하세요.

xterm에서X 석영유형

echo $DISPLAY

이것은 당신에게 다음과 같은 것을 줄 것입니다

bash-3.2$ echo $DISPLAY
/private/tmp/com.apple.launchd.8cSMuyvAKe/org.macosforge.xquartz:0
bash-3.2$ 

지금단말기, 입력(다음으로 대체됨당신의전체 DISPLAY가치)

$ export DISPLAY=/private/tmp/com.apple.launchd.8cSMuyvAKe/org.macosforge.xquartz:0

그런 다음

$ xeyes

그럼 xeyes~해야 한다나타나다X 석영회의.


이는 High Sierra 10.13.6에서 실행되는 XQuartz 2.7.11에 적용됩니다. Big Sur와 관련된 문제가 발생할 수 있습니다.

관련 정보