首页 > 系统相关 >Windows下编译freeglut库

Windows下编译freeglut库

时间:2022-09-22 20:33:19浏览次数:48  
标签:lib Windows Library 编译 include freeglut

背景

glut库自从2000年之后就没更新了,freeglut库一般是只提供源代码,不提供预编译文件

如果在Linux下使用,可以直接用install安装OpenGL开发环境。而在Windows则需要自行编译

 

方法

1.下载freeglut源代码并解压

http://freeglut.sourceforge.net/index.php#download

一般是下载Stable Releases中的freeglut x.x.x,下载后解压。例如,解压到E:\freeglut目录

 

2.下载CMake并安装

https://cmake.org/download/

一般是下载Windows x64 Installer: cmake-x.x.x-windows-x86_64.msi,下载后安装。

 

3.使用CMake生成freeglut的Visual Studio项目

(1) 运行CMake

(2) 在where is the source code输入框填入freeglut源代码路径,对应上面的例子是E:\freeglut目录

(3) 在where to build the binaries输入框填入生成的VS项目路径。例如E:\freeglutVS

(4) 点击Configure按钮,选择VS的版本,然后点击Finish按钮,开始检查环境。

过程中会提示"xxx.h not found",不用担心,not found的文件是Linux文件,在Windows下是很正常,可以忽略该提示。

(5) 点击Generate按钮,就会在E:\freeglutVS目录生成freeglut可编译项目

 

4.编译freeglut

进入E:\freeglutVS目录,打开freeglut.sln,用debug+x86(win32)的方式编译。

编译的文件包括:

(1) bin\Debug中的freeglut.dll或freeglutd.dll(如果是debug编译,末尾会有个d)

(2) lib\Debug中的freeglut.lib和freeglut_staticd.lib

另外,还会需要用到源代码目录中的include子目录。对应上面例子是E:\freeglut\include

 

5.环境准备

(1) 把freeglut.dll或freeglutd.dll复制到系统的SysWOW64目录,一般是C:\Windows\SysWOW64

(2) 下载glew库并解压

http://glew.sourceforge.net/

一般是下载Binaries Windows 32-bit and 64-bit,下载后解压

(3) 把freeglut和gluw的文件放到某个目录,例如E:\Library\,子目录如下: 

├─freeglut
│  ├─include
│  │  └─GL
│  └─lib
└─glew
    ├─bin
    ├─doc
    ├─include
    │  └─GL
    └─lib

 

6.创建OpenGL项目并测试

(1) 创建VS项目,例如OpglTest

(2) 右键项目 -> 属性 -> VC++目录 -> 

  1) 在Include目录添加E:\Library\freeglut\include和E:\Library\glew\include

  2) 在Library目录添加E:\Library\freeglut\lib和E:\Library\glew\lib

 

(3) 新建OpglTest.cpp文件,输入以下代码:

#include <GL/glew.h>
#include <GL/freeglut.h>

void Display()
{
    glClear(GL_COLOR_BUFFER_BIT);
    glRectf(-0.6f, -0.6f, 0.6f, 0.6f);
    glFlush();
}

int main(int argc, char* argv[])
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
    glutInitWindowPosition(100, 100);
    glutInitWindowSize(500, 500);
    glutCreateWindow("OpenGL test");
    glutDisplayFunc(&Display);
    glutMainLoop();
    return 0;
}

调试运行

 

7.freeglutd.lib的错误提示处理

如果弹出错误提示说"找不到freeglutd.lib文件",打开E:\Library\freeglut\include\GL\目录中的freeglut_std.h文件

找到pragma comment (lib, "freeglutd.lib"),改成pragma comment (lib, "freeglut.lib"),就是说把末尾的d去掉

重新编译即可

 

标签:lib,Windows,Library,编译,include,freeglut
From: https://www.cnblogs.com/live41/p/16720757.html

相关文章