2014-02-22 37 views
1

所以我有在Windows上编译错误的OpenGL显示: freeglut(./testing):未能打开显示'在Windows GDI(使用Cygwin的)

我做了一些搜索,发现了我需要通过命令行设置DISPLAY环境:declare -x DISPLAY =“:0.0”

进一步我发现在ubuntu上,X服务器需要首先运行:/ usr/X11R6/bin/startxwin的.sh

但这并不工作在Windows上。一些网站建议使用本机窗口gdi但他们没有指定如何。

回答

0

我做了一些搜索,发现了,我需要通过设置DISPLAY环境的命令行:声明-x DISPLAY =“:0.0”

好了,这是因为你的编译程序与期望X11服务器连接的库。 Cygwin是用于Windows的* nix运行时环境,* nix程序使用X11作为其图形输出。

一些网站建议使用本机窗口gdi但他们没有指定如何。

通过下载或构建一个不使用X11的FreeGLUT版本。这可以使用Cygwin完成,但是您必须配置构建过程以明确不使用X11(./configure --with-x=no)。

更好的解决办法是不使用Cygwin,而是作为MinGW的编译器,这是无论如何建议,因为它解除您从Cygwin的依赖。

+0

或者有没有其他的方法可以直接在windows系统上编译? (不使用cygwin或mingw) – kmes40505

+0

@ kmes40505:那你需要一个编译器。 Cygwin在* nix环境中也提供了一个编译器。 MinGW是适用于Windows的GNU编译器集合。您也可以使用MSVC编译器(可通过Platform SDK https://www.microsoft.com/en-us/download/details.aspx?id=3138免费获得) – datenwolf