关于vs生成静态库文件并使用

发布时间 2023-04-04 23:01:00作者: _Explosion!

开发豆之助桌宠(QT)时想加一个二维码生成功能,于是想引入qrencode库,找到了其原文件,直接把整个文件加到工程项目太过笨重,于是我想用vs生成lib引入。

生成时遇到很多问题并一一解决

1.在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "pch.h"?

解决方法:1)在解决方案右击工程,点击属性  2)在配置属性 -> c/c++ -> 预编译头 中 将 “使用预编译头(/YU)” 改为 “不使用预编译头”

2.HAVE_CONFIG_H未定义

解决方法:在项目属性中添加预处理定义:HAVE_CONFIG_H(项目->属性->配置属性->C/C++->预处理器->预处理器定义)

3.无法打开源文件"pthread.h"

解决方法:该头文件是linux环境下的,直接在config.h找到HAVE_LIBPTHREAD将其值改为0

4.QTCreator调用VS的lib库错误 undefined reference to `@__security_check_cookie@4‘

解决方法:VS中 项目属性,C/C++ // 代码生成 //安全检查//禁止

5.QT Creator调用Visual Studio生成的静态库出现_RTC_Shutdown和_RTC_InitBase相关错误的解决方法

解决方法:VS中修改:属性 > 配置属性 > C/C++ > 代码生成 > 基本运行时检查,将值从“两者(…)”改为“默认值”。

6.QT Creator调用Visual Studio生成的静态库出现error: undefined reference to `_RTC_CheckEsp'

解决方法:vs不要debug生成,直接生成解决方案