windows下编译与使用glew的静态库

1、源码获取
1、需要下载官网打好的zip源码包,github clone下来的不能用

1、静态库版本
1、编译
1、打开vs工程进行编译:
1、需要将release版本的/MT改为/MD,否则会出现:
MSVCRT.lib(MSVCR120.dll) : error LNK2005: free 已经在 LIBCMT.lib(free.obj) 中定义

LINK : warning LNK4098: 默认库“MSVCRT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
2、或者,添加[ /NODEFAULTLIB:library]进行编译也可以【未验证】
2、cmake工程进行编译:
1、需要将输出文件名glew32、glew32d分别改为glew32s、glew32sd,以区分静态库跟动态库
2、需要给glewinfo、visualinfo工程添加GLEW_STATIC预编译宏,以保证链接的是静态库
3、glewinfo、visualinfo工程:链接库需要改为相应的静态库;工程依赖项需要修改为相应的静态库工程
2、使用
1、需要给相应工程添加GLEW_STATIC预编译宏,否则会出现:
error LNK2019: 无法解析的外部符号 __imp_glewInit,该符号在函数 main 中被引用

cmake添加预编译宏:
1、ADD_DEFINITIONS( -DGLEW_STATIC )

参考:
1、http://glew.sourceforge.net/install.html

发布了17 篇原创文章 · 获赞 9 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/toothing/article/details/80881137