Visual Studio C++ 同一解决方案下跨项目使用静态库的方法咨询
Visual Studio 静态库调用配置步骤
基础配置流程
- 第一步:配置项目编译依赖,保证编译顺序正确
右键解决方案 -> 选择「属性」-> 进入「通用属性」-「项目依赖项」页面,选中main项目,勾选plus、times两个项目作为依赖项,VS会自动优先编译两个静态库项目,避免链接时找不到最新的lib文件。 - 可选简化配置(同解决方案项目推荐):右键main项目 -> 选择「添加」->「引用」,勾选plus、times两个项目,确认后VS会自动处理编译依赖、库目录、附加依赖项配置,仅需手动配置头文件路径即可。
- 第二步:配置头文件包含路径
右键main项目 -> 选择「属性」,先把顶部的「配置」选为所有配置,「平台」选为你使用的对应平台(如x64),避免后续切换配置时配置失效。
进入「C/C++」->「常规」->「附加包含目录」,添加plus、times项目的头文件所在文件夹路径,确认后即可在main代码中直接用#include "plus.h"、#include "times.h"引入头文件。 - 第三步:手动配置静态库查找目录(未使用引用配置时需要)
进入main项目属性页的「链接器」->「常规」->「附加库目录」,添加plus、times项目生成.lib文件的输出目录,推荐使用VS内置宏如$(OutDir)适配不同配置的输出路径,避免手动写死路径出错。 - 第四步:手动添加静态库依赖(未使用引用配置时需要)
进入main项目属性页的「链接器」->「输入」->「附加依赖项」,添加plus.lib、times.lib两个文件名,确认保存即可。
常见注意事项
- 三个项目的运行库配置必须一致,Debug模式下统一用「多线程调试(/MTd)」,Release模式下统一用「多线程(/MT)」,否则会出现链接冲突错误。
- 如果静态库的函数声明用到了
extern "C",main项目引用的头文件声明要和库端保持一致,避免函数名修饰规则不匹配导致找不到函数的链接错误。
内容的提问来源于stack exchange,提问作者Randy Price
相关产品推荐
相关产品推荐

