环境:

vs2019 community

glfw3.3.2

问题描述:

因为想只用lib库编译代码,不想最终输出带上一堆dll文件,所以在vs做了如下图所示的设置:

重新编译时出现如题类似的错误,查找资料这里想到可能也是最初建立glfw3.3.2编译工程时配置cmake时出现什么错误,所以对glfw3.3.2的cmake配置做如下图所示的修改:

勾掉 USE_MSVC_RUNTIME_LIBRARY_DLL 这项,再次生成工程--->编译,得到新的lib文件,使用该文件,问题解决。

 

总结:

后来去看之前glfw3.3.2的编译工程,看到属性配置如下所示:

可以看到之前编译工程在代码生成--->运行库,这里的选择与自己目标工程是不同的,以后排查这类问题,可以借鉴这种经验,再有,直接修改之前编译工程的运行库选项,比如设为 MTd得到的lib文件放到目标工程里也是正确的。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐