如何将自定义库(例如 glew)添加到 mingw-w64?
How to add a custom library (e.g. glew) to mingw-w64?
我正在使用 windows,我的目标是添加 glew 库 (http://glew.sourceforge.net/index.html) to mingw. I have downloaded mingw-w64 via GitHub (https://github.com/mstorsjo/llvm-mingw/releases/tag/20210423)。它带有一个“bin”、“lib”和“include”文件夹。在“bin”文件夹中,我执行“make”来执行我的项目的 makefile,其中包含行
LDLIBS=-lm -lGL -lGLEW -lglfw
我已将“glew32.lib”复制到“mingw/lib”,“GL/glew.h”和“GL/wglew.h”复制到“mingw/include/GL” ”和“bin/glew32.dll”到“mingw/bin”。
在我的源代码中,我包含了头文件
#include <GL/glew.h>
当我执行“make”时,我在该行收到错误消息:
GL/glew.h: No such file or directory
如何将 glew 等自定义库添加到 mingw?
使用库时,使用 -I
编译器标志告诉编译器在哪里可以找到包含文件(在您的例子中是包含 GL
文件夹的路径)和 -L
linker 标志告诉 linker 在哪里可以找到库。
要 link 与库一起使用 -l
标志。库本身是一个 lib*.a
文件(或 lib*.dll.a
用于共享库)。对于 -l
标志,指定的库没有前缀和后缀,因此如果您的库名为 libglew.a
,则标志将为 -lglew
.
也可以指定 lib*.a
文件的完整路径而不是 -L
和 -l
标志,如果你有 .dll
和 MinGW文件,您甚至可以尝试指定 .dll
文件的路径,link 用户将知道该怎么做。
我正在使用 windows,我的目标是添加 glew 库 (http://glew.sourceforge.net/index.html) to mingw. I have downloaded mingw-w64 via GitHub (https://github.com/mstorsjo/llvm-mingw/releases/tag/20210423)。它带有一个“bin”、“lib”和“include”文件夹。在“bin”文件夹中,我执行“make”来执行我的项目的 makefile,其中包含行
LDLIBS=-lm -lGL -lGLEW -lglfw
我已将“glew32.lib”复制到“mingw/lib”,“GL/glew.h”和“GL/wglew.h”复制到“mingw/include/GL” ”和“bin/glew32.dll”到“mingw/bin”。
在我的源代码中,我包含了头文件
#include <GL/glew.h>
当我执行“make”时,我在该行收到错误消息:
GL/glew.h: No such file or directory
如何将 glew 等自定义库添加到 mingw?
使用库时,使用 -I
编译器标志告诉编译器在哪里可以找到包含文件(在您的例子中是包含 GL
文件夹的路径)和 -L
linker 标志告诉 linker 在哪里可以找到库。
要 link 与库一起使用 -l
标志。库本身是一个 lib*.a
文件(或 lib*.dll.a
用于共享库)。对于 -l
标志,指定的库没有前缀和后缀,因此如果您的库名为 libglew.a
,则标志将为 -lglew
.
也可以指定 lib*.a
文件的完整路径而不是 -L
和 -l
标志,如果你有 .dll
和 MinGW文件,您甚至可以尝试指定 .dll
文件的路径,link 用户将知道该怎么做。