是什么原因阻止我将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" { ... }
包装头文件的包含。
相关文章:
- Windows 链接器是否使用 LoadLibrary 解析 DLL 中未定义的符号?
- 优化链接的 DLL
- 如何链接 DLL 以供 LoadLibrary() 使用(在 Windows 上的 C++ 中)并从调用 exe 导入变
- 不能使用隐式链接.dll中的类
- 显式链接 DLL 和类方法
- 哪种方法更好获取静态链接DLL的模块句柄(HMODULE) - 使用GetModuleHandleEx()或LoadLibrary()?
- 在QtCreator中链接dll的未定义引用错误
- 如何在qt中链接dll
- 在虚幻4插件中链接DLL
- 我们可以动态链接 DLL 的不同方法是什么
- 如果使用LoadLibrary显式链接dll,则列出从PE文件导入的函数
- 静态链接.dll和cmake/qt创建者?
- 当显式动态链接dll时,使用std::unique_lock会破坏XP的兼容性
- 导出:使用c++链接DLL
- 使用xerces链接DLL会给出未定义的符号
- Visual Studio中的链接dll
- 链接DLL时命令行错误
- 如何链接.dll库与c++ VS项目
- 设置显式链接DLL的内部变量
- LNK 2019试图链接DLL和EXE