繁体   English   中英

是什么原因阻止我将VS2010中的静态库正确链接到我的.dll,

[英]What are the reasons stopping me from correctly linking a static library in VS2010 to my .dll

我正在尝试将VS2010中的静态库链接到我的.dll,由于某种原因,它无法解析所需的符号。 我已经像添加任何库一样添加了该库,但还是没有。 我也完全按照应有的方式称呼这些符号,我正在复制其他人有效的实现方式,以确保它们不会出错。 我可能缺少某种设置吗? 我已经完成了lib.exe / dumpall,一切看起来都井然有序。 非常沮丧。

在检查了到库的链接之后,我看到源文件都是C源文件,并且所有标头都没有函数声明的extern "C"

这意味着,如果您将头文件包含到项目中,则函数声明将具有混乱的名称 ,名称(符号),这些名称不再与库中的名称匹配。

您应该用extern "C"声明自己使用的函数,或者用extern "C" { ... }包裹头文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM