【发布时间】:2020-11-21 07:23:54
【问题描述】:
这是我第一次尝试将外部库链接到 C 文件。我读到我可以使用 Makefile,这就是我所拥有的:
all: src/main.c
gcc src/main.c -o main.exe -IC:\src\C\GameTry\dependencies\include -LC:\src\C\GameTry\dependencies\lib -lglfw3 -lgdi32 -lglew32s
clean:
rm *.o
我之所以包含 -lgdi32 是因为官方 glfw 文档指出:
当使用 MinGW 将应用程序与 GLFW 的静态版本链接时,您还必须显式链接 gdi32
此 makefile 有效,但 OpenGL 多次多次抛出警告 corrupt .drectve at end of def file 并且它可能多次抛出 undefined reference to '__security_cookie' 错误,导致程序无法编译。
我已经在互联网上四处寻找,但无法找到答案。我相信这些错误与默认的 MSVN 库有关,但我不确定
【问题讨论】:
-
"但是 OpenGL 会抛出警告" 不,OpenGL 不做这种事情。您得到的错误来自您的链接器,而不是 OpenGL。不知道您使用的是什么版本的 glfw 库,但它似乎不是正确的。
标签: c opengl makefile mingw static-linking