在 Ubuntu 上使用 MinGW 构建时出错

Error when building with MinGW on Ubtunu

我正在使用 Ubuntu,我想将我的项目编译为 Linux 和 Windows。通过一些谷歌搜索,我找到了 MinGW。我设置了我的 makefile 来为两个操作系统构建我的项目,Windows 和 Linux 的参数完全相同。 Linux 的构建有效,但是当我 运行 Windows make 时,我收到此错误:

src/gl3w/glcorearb.h:616:10: fatal error: KHR/khrplatform.h: No such file or directory
 #include <KHR/khrplatform.h>
          ^~~~~~~~~~~~~~~~~~~
compilation terminated.

我不确定 GCC 和 MinGW 之间如何使用和共享库,但我认为 MinGW 只是缺少所需的库。

如何安装所需的库? (如果我的假设是正确的)

我该如何解决这个问题?

OpenGL 源依赖于 Khronos header。当您自己下载和编译 OpenGL 时,您将从官方网站 https://www.khronos.org/registry/EGL/api/KHR/khrplatform.h.

下载 khrplatform.h 文件

作为 OpenGL 所有者写入 (https://www.khronos.org/registry/OpenGL/index_gl.php):

The OpenGL headers all depend on the shared header from the EGL Registry . This is a new dependency, introduced in OpenGL-Registry pull request 183 for increased compatibility between OpenGL and OpenGL ES headers.

所以

  1. 下载khrplatform.h
  2. 在你/usr/include.

    中创建目录'KHR'
    cd /usr/include
    sudo mkdir KHR
    
  3. 复制khrplatform.h文件到/usr/include