VS 2010 - #pragma comment (lib, XX) 有效,Additional Dependencies 无效。为啥?

Posted

技术标签:

【中文标题】VS 2010 - #pragma comment (lib, XX) 有效,Additional Dependencies 无效。为啥?【英文标题】:VS 2010 - #pragma comment (lib, XX) works, Additional Dependencies doesn't. Why?VS 2010 - #pragma comment (lib, XX) 有效,Additional Dependencies 无效。为什么? 【发布时间】:2014-06-20 02:05:36 【问题描述】:

似乎无论我做什么,我都无法让附加依赖项正确链接我的静态库。

这个静态库是从我创建的另一个项目中创建的。我尝试将其添加为参考,强制项目依赖关系,仔细检查库的路径是否正确。唯一似乎使我未解决的外部链接器错误消失的是#pragma 注释(lib,XX)。

有人知道这是为什么吗?我非常希望避免使用#pragma 注释,而是将其作为附加依赖项添加。

谢谢!

【问题讨论】:

您能否提供更多详细信息...您是否正确设置了库的路径? 在配置属性 -> VC++ 目录 -> 库目录中,我已经正确设置了构建的 .lib 文件所在的相对路径。 您使用的是调试还是发布?你确定你是用;分隔lib 这是 dbg,32 位。我正在构建一个链接到静态库的可执行文件。该库是类似构建的 dbg,32 位。库由 ;. 分隔。 'VC++ 目录'是错误的去处。您可能需要“配置属性/链接器/通用/附加库目录”。 【参考方案1】:

还有一件事:确保首先构建了构建 lib 的项目,即确保在链接您的项目之前已经创建了库。

【讨论】:

以上是关于VS 2010 - #pragma comment (lib, XX) 有效,Additional Dependencies 无效。为啥?的主要内容,如果未能解决你的问题,请参考以下文章

C++ #pragma comment语法(预处理指令)

pragma comment的使用

Additinal Dependencies和#pragma comment(lib,"*.lib")的分析

#pragma comment(lib,"xxx.lib")

C++:#pragma comment(lib, "XXX") 实际上对“XXX”做了啥?

VS编译代码未通过,常见问题。