为什么我必须使用 MinGW 手动 link OpenGL 库?
Why do i have to link OpenGL lib manually with MinGW?
我有以下 gcc 命令可以正常工作:
gcc -Wall -g hello_gl.c -lglut32 -lopengl32 -lglu32 -o hello_gl && hello_gl
我想避免手动 link 每个 OpenGl 库的痛苦,从而找到一种方法让 MinGW 理解 glut32、openGL32、glu32 都是位于 C:\MinGW\lib .
我尝试根据 MinGW 官方文档设置以下 windows envar :
CPATH = C:\MinGW\include
LIBRARY_PATH = C:\MinGW\lib
但是当我尝试简单地 运行 时:
gcc -Wall -g hello_gl.c -o hello_gl && hello_gl
MinGW 找不到 OpenGL 库。
我也尝试在 gcc 命令中强制 lib 路径:
gcc -Wall -g -IC:\MinGW\include hello_gl.c -LC:\MinGW\lib -o hello_gl && hello_gl
但是 MinGW 还是找不到 OpenGL 库。
所以我想知道
- Linking manually all lib included is an obligation with OpenGL Lib ?
- If yes why is that so ?
- If not how could i do to solve my problem and force MinGW to find them ?
干杯
下面的命令不会告诉 gcc 使用任何库进行构建,只是告诉在哪里可以找到它们。
gcc -Wall -g -IC:\MinGW\include hello_gl.c -LC:\MinGW\lib -o hello_gl && hello_gl
你必须包含 -l[libraryname] 选项,否则,它怎么知道你想 link 使用哪些库,就像你必须告诉它哪个来源或您要构建的目标文件。
我有以下 gcc 命令可以正常工作:
gcc -Wall -g hello_gl.c -lglut32 -lopengl32 -lglu32 -o hello_gl && hello_gl
我想避免手动 link 每个 OpenGl 库的痛苦,从而找到一种方法让 MinGW 理解 glut32、openGL32、glu32 都是位于 C:\MinGW\lib .
我尝试根据 MinGW 官方文档设置以下 windows envar :
CPATH = C:\MinGW\include
LIBRARY_PATH = C:\MinGW\lib
但是当我尝试简单地 运行 时:
gcc -Wall -g hello_gl.c -o hello_gl && hello_gl
MinGW 找不到 OpenGL 库。
我也尝试在 gcc 命令中强制 lib 路径:
gcc -Wall -g -IC:\MinGW\include hello_gl.c -LC:\MinGW\lib -o hello_gl && hello_gl
但是 MinGW 还是找不到 OpenGL 库。
所以我想知道
- Linking manually all lib included is an obligation with OpenGL Lib ?
- If yes why is that so ?
- If not how could i do to solve my problem and force MinGW to find them ?
干杯
下面的命令不会告诉 gcc 使用任何库进行构建,只是告诉在哪里可以找到它们。
gcc -Wall -g -IC:\MinGW\include hello_gl.c -LC:\MinGW\lib -o hello_gl && hello_gl
你必须包含 -l[libraryname] 选项,否则,它怎么知道你想 link 使用哪些库,就像你必须告诉它哪个来源或您要构建的目标文件。