Macos Mac终端上写着:“;无法打开显示…正在中止“;

Macos Mac终端上写着:“;无法打开显示…正在中止“;,macos,plot,terminal,display,Macos,Plot,Terminal,Display,当我使用XFoil(对于Mac,安装了XQuartz)并试图绘制一些东西时,上面的消息就会出现。另一件事,我使用了下面链接的说明来安装Gnuplot,我担心我造成了一些损害。。。这样可以吗? 请尝试使用 export DISPLAY=:0.0 在shell中,因此GNUplot知道它应该使用标准显示器(即您的XQuartz环境)您必须首先安装一个xserver。在你会使用的MAC电脑上。您需要下载并安装XQuartz,然后从XQuartz内部(启动后右键单击徽标)启动终端。在此终端中,导航到安

当我使用XFoil(对于Mac,安装了XQuartz)并试图绘制一些东西时,上面的消息就会出现。另一件事,我使用了下面链接的说明来安装Gnuplot,我担心我造成了一些损害。。。这样可以吗? 请尝试使用

export DISPLAY=:0.0
在shell中,因此GNUplot知道它应该使用标准显示器(即您的XQuartz环境)

您必须首先安装一个xserver。在你会使用的MAC电脑上。您需要下载并安装XQuartz,然后从XQuartz内部(启动后右键单击徽标)启动终端。在此终端中,导航到安装位置并运行它。显示变量(如另一个答案所示)在此终端中自动预设。因此,如果按照此处所述运行,则无需执行此操作


为了安装xfoil(macOS Catalina),我必须编译代码。在MAC上安装Xquartz并确保它在您尝试启动X应用程序后运行

pgrep-fl Xquartz
将显示与
Xquartz
匹配的所有进程及其参数

如果没有pgrep,请运行
/bin/ps-o'pid,命令'-e | grepxquartz

使用显示集查找可执行文件本身的条目;大概是这样的:

1182/opt/X11/bin/Xquartz:0-nolisten tcp-iglx-auth…

第一个数字是进程id或PID。如果等待20-30秒后重新运行该命令,请确保数字相同

如果PID已更改,那么您就遇到了我遇到的问题,其中Xquartz退出时出现错误,并且每当我尝试运行xterm时,系统将再次重新启动它

要检查日志中是否有错误,请启动/Applications/Utilities中的Console应用程序。在搜索框中,键入
Xquartz
并按return,您应该只看到Xquartz条目

我看到的错误日志是:

tput: No value for $TERM and no -T specified
   -: line 0: exec: uid=501(...): not found
经过一些调查,我发现我需要做的只是在运行X服务器之前设置一个术语,而这只能在主目录中创建的
.x11run
文件中完成

使用以下内容创建~/.x11运行:

#!/bin/bash

export TERM=xterm-256color
# include other vars the X11 server may need
/Applications/Utilities/XQuartz.app/Contents/MacOS/X11.bin "${@}"
然后,使其可执行:
chmod+x~/.x11run

接下来,注销(苹果图标左上角,单击注销),然后重新登录,并尝试您的应用程序,在我的例子中是xterm,几秒钟后,它终于出现了