我正在构建使用OpenCV库显示图像的应用程序。应用程序在以下行失败:
cv::namedWindow(....);
我在Windows 10上使用cygwin,并使用CLion IDE。
可执行文件成功构建,但运行时显示以下错误:
(Display Image:10340): Gtk-WARNING **: cannot open display:
我使用cygwin setup确保安装了xinit
及其依赖项。我使用具有以下内容的批处理文件运行x服务器:
c:cygwinbinrun.exe -p /usr/X11R6/bin XWin -listen tcp -multiwindow -clipboard -silent-dup-error
我可以在通知图标区域看到"X"图标,但当我试图运行可执行文件时仍然得到错误。我试着从CLion和cygwin控制台运行它,但结果相同。
我错过了什么?
要运行需要访问X服务器的程序,您需要:
1)运行的X服务器
2)变量DISPLAY定义
如果你从Xterm查看,你会看到:
$ echo $DISPLAY
:0.0
这样您的程序就可以在定义DISPLAY并找到X服务器时运行。