使用VisualGDB在Visual Studio中编译Cygwin时出错

时间:2013-05-28 07:35:11

标签: visual-studio-2008 opengl cygwin

我正在尝试使用VisualGDB在Visual Studio中编译Cygwin项目。 编译时,打印出来:

  

1&gt; / bin / sh ../../../libtool --mode = link g ++ -g -Wall -o   expression.exe SimpleFace.o ExpressionUI.o global.o noise.o   simulation.o actor.o Bone.o MathLib.o maxMesh.o skeleton.o saflist.o   bmptexture.o RenderTool.o interface.o FileUtils.o   -L ../../../ src / expression / ExpressionLib -lexpression -L ../../../ sdk / nvmathlib / src / nv_math -lnvmath -lglui -lglut -lGL -lGLU < /强>

     

1&gt; g ++ -g -Wall -o expression.exe SimpleFace.o ExpressionUI.o global.o   noise.o simulation.o actor.o Bone.o MathLib.o maxMesh.o skeleton.o   saflist.o bmptexture.o RenderTool.o interface.o FileUtils.o   -L / cygdrive / C /用户/ ASTAR /桌面/ ExpDemo1.2_linux / SRC /表达/ ExpressionLib   /cygdrive/c/Users/ASTAR/Desktop/ExpDemo1.2_linux/src/expression/ExpressionLib/.libs/libexpression.a   -L / cygdrive / C /用户/ ASTAR /桌面/ ExpDemo1.2_linux / SDK / nvmathlib / SRC / nv_math   /cygdrive/c/Users/ASTAR/Desktop/ExpDemo1.2_linux/sdk/nvmathlib/src/nv_math/.libs/libnvmath.a   -lglui /usr/lib/libglut.dll.a /usr/lib/libXi.dll.a /usr/lib/libXrandr.dll.a /usr/lib/libXext.dll.a   /usr/lib/libXrender.dll.a /usr/lib/libX11.dll.a /usr/lib/libxcb.dll.a   /usr/lib/libXau.dll.a /usr/lib/libXdmcp.dll.a -lGL -lGLU

并且,有很多错误,例如

  

1&gt; /usr/lib/w32api/libglui.a(glui.o):glui.cpp :(。text + 0x4e): undefined   参考 _glutGetWindow@0' 1>/usr/lib/w32api/libglui.a(glui.o):glui.cpp:(.text+0xa5): undefined reference to _ glutGetWindow @ 0'   1&gt; /usr/lib/w32api/libglui.a(glui.o):glui.cpp :(。text + 0x129):undefined   引用_glutInitWindowPosition@8' 1>/usr/lib/w32api/libglui.a(glui.o):glui.cpp:(.text+0x19a): undefined reference to _ glDrawBuffer @ 4'   1&gt; /usr/lib/w32api/libglui.a(glui.o):glui.cpp :(。text + 0x206):undefined   引用_glutCreateSubWindow@20' 1>/usr/lib/w32api/libglui.a(glui.o):glui.cpp:(.text+0x254): undefined reference to _ glDrawBuffer @ 4'   1&gt; /usr/lib/w32api/libglui.a(glui.o):glui.cpp :(。text + 0x2e7):undefined   引用`_glutEntryFunc @ 4'...

我认为问题是第二个命令 g ++ 缺少 -lglut 。 但我不知道如何添加这些,因为该命令是由VisualGDB自动生成的。

有人有建议吗?

1 个答案:

答案 0 :(得分:0)

glui建立在WGL之上(Windows / GDI OpenGL32);这与GLX(Mesa提供的X11 OpenGL)不兼容。你必须选择其中一个。