美文网首页
CodeBlocks 16.01配置OpenGL(GLUT)

CodeBlocks 16.01配置OpenGL(GLUT)

作者: xushiluo | 来源:发表于2018-12-11 14:53 被阅读51次

    撰写时间:2018年12月11日
    上一篇写了Visual studio express 2013 for desktop下如何配置OpenGL。这次写下在codeBlocks下如何配置。

    一、系统环境

    • windows 10 64bit 版本1803
    • CodeBlocks 16.01 Rev 10702

      CodeBlocks 16.01下载不带minGW的版本,因为我们会单独使用tdm-gcc安装minGW套件

    • tdm-gcc-5.1.0-3.exe
    • Glut 3.7 beta
    • winglut.zip

    二、软件准备

    1. tdm-gcc

    tdm-gcc-5.1.0-3.exe是个C/C++的编译器套件minGW,我们开发C++程序,当然需要该编译器了。当然,也可以使用微软的VC编译器,也是可以的。这里我们使用GNU GCC编译器,所以下载了tdm-gcc-5.1.0-3.exe。
    下载地址:http://tdm-gcc.tdragon.net/download

    2. CodeBlocks

    CodeBlocks可以到腾讯下载中心下载,相对于官网,腾讯软件中心的下载速度比较快。腾讯上的版本不带minGW,就选这个了。
    版本号是 16.01: https://pc.qq.com/detail/3/detail_2123.html

    3. Glut和winGlut

    minGW编译器套件是gcc在Windows下的移植版,gcc在Linux下工作得更好。在windows下使用minGW版本的OpenGL库时,除了需要Glut这些东西外,还需要winGlut链接库。

    (1) glut下载地址可以到我的百度云,或者网上找。建议到我的百度云下载(无需提取码):
    https://pan.baidu.com/s/1TP1Kx8L6GkrMILDIK5jx2w
    下载后发现里面有7个文件,如下:

    glut_file_list

    (2)winGlut.zip可以到这里下载:
    http://web.cs.wpi.edu/~gogo/courses/mingw/winglut.zip
    或者到我的百度云下载:
    https://pan.baidu.com/s/1XNasPj2smTOFdjeOj3sf_A


    三、安装tdm-gcc和CodeBlocks

    1. 安装tdm-gcc

    首先我们安装tdm-gcc-5.1.0-3.exe,由于它是编译器,我们先安装它。随后安装CodeBlocks 16.01的时候,就可以自动检测到该编译器了。
    安装过程没什么好说的,建议安装32位的版本,64位的操作系统是兼容32位版本的gcc的所以不必担心兼容性问题。我将其安装到了C盘的根目录下,目录为:C:\TDM-GCC-32

    tdm-gcc_folder

    2. 安装CodeBlocks

    安装过程没什么好说的,直接一步步安装到默认路径。安装完成后勾选自动启动,然后它会自己检测到已经存在的编译器,这里我们选择GNU GCC Compiler,也就是我们之前安装的tdm-gcc了。

    四、设置Glut和winGlut

    1. 复制Glut文件

    将下载的glutdlls37beta.zip解压缩为文件夹glutdlls37beta。
    将glutdlls37beta中的文件复制到对应的TDM-GCC目录,具体复制关系如下(不要着急复制,可以使用下面的bat文件自动复制):

    下面的$minGW_HOME$指的是:C:\TDM-GCC-32
    1). 将glut.h复制到\$minGW_HOME\$\include\GL目录,GL目录是本来就存在的。
    2). 将glut.libglut32.lib复制到$minGW_HOME\lib目录,。
    3). 如果是64位操作系统,将glut.dllglut32.dll复制到C:\Windows\SysWOW64
    如果是32位操作系统,将glut.dllglut32.dll复制到C:\Windows\System32

    那么,另外两个x64_Copy2VS2013Express.batx64_Copy2_Tdm-gcc.bat是干嘛的呢?
    手动复制多个文件的操作是比较麻烦而且容易出错的。所以我写了个bat批处理文件,x64_Copy2VS2013Express.bat将对应的文件复制到Visual studio express 2013 for desktop的默认安装目录(请不要随意更改VS的安装路径),当然,这个bat文件本博客中用不着。

    x64_Copy2_Tdm-gcc.bat是将glut库的对应文件复制到TDM-GCC编译器默认的安装目录。这里我们直接右键单击该bat批处理文件,以管理员运行,如果不报错即可完成复制。(复制到C盘某些目录,需要管理员权限)

    2. 复制winGlut文件

    解压缩winglut.zip到文件夹winglut。解压后如下图所示,我们只需要winlib文件夹中的libglut32win.a链接库文件。

    winGlut_file_list

    libglut32win.a复制到$minGW_HOME\lib目录,本文中是C:\TDM-GCC-32\lib,具体目录取决于你的tdm-gcc安装路径。

    五、使用CodeBlocks创建Glut工程

    (1)打开CodeBlocks,点击菜单栏【File】-->【New】-->【Project】,选择【GLUT project】,指定项目的名称和项目的存储路径。


    create_glut_project

    (2)指定GLUT的安装路径。
    注意看对话框上的说明文字,步骤四.1中,我把glut安装到tdm-gcc的目录下,GLUT的安装路径必须包含include和lib两个子文件夹。本文中,我的GLUT安装路径是:C:\TDM-GCC-32

    specify_glut_path

    (3)指定编译器
    这一步指定编译器,当然是选择GNU GCC Compiler啦,要不然我们安装tdm-gcc干嘛。

    specify_compiler

    (4)运行glut示例程序
    如果上面的步骤都没有错,那么至此CodeBlocks工程创建成功,可以选择菜单【Build】-->【Build and run】或者按下F9,构建并运行程序。得到如下报错:

    build_error

    这是什么缘故呢?根据这篇博客的结果:https://blog.csdn.net/qq_38068435/article/details/79662624,我们需要在头文件中添加#include<windows.h>, windows.h最好放在#include <GL/glut.h>的前面。
    如下图所示:

    add_windows_h

    再次按下F9,构建并运行,得到正确结果,喜大普奔!!!


    glut_shape_results

    六、写在后面的话

    本文中使用了不带minGW的CodeBlocks,因此最后新建CodeBlocks工程后,还需要添加windows.h头文件。

    根据这篇博客:Code Blocks中配置OpenGL方法-Sophiale07
    使用带minGW的CodeBlocks,该博主可以不加windows.h头文件而不报错。不过这个我并未验证。如果有谁验证了请告诉我!!!

    相关文章

      网友评论

          本文标题:CodeBlocks 16.01配置OpenGL(GLUT)

          本文链接:https://www.haomeiwen.com/subject/eywshqtx.html