【发布时间】:2010-11-12 08:08:18
【问题描述】:
可能重复:
What is an undefined reference/unresolved external symbol error and how do I fix it?
我正在努力将大量 .h 和 .lib 文件从原生 C++ 包装到托管 C++ 以最终用作 C# 中的引用 .dll。
我已经链接了 .lib 文件,到目前为止一切进展顺利。打包最新的 .h 文件后,当 2 个函数返回链接错误时,我遇到了障碍:
error LNK2019: unresolved external symbol __imp__htonl@4 referenced in function
"public: void __thiscall Field::setCharacter(unsigned char,int)"
(?setCharacter@Field@@QAEXEH@Z) myutils.lib
我在链接器选项中引用了myutils.lib,所以这不应该是问题。
奇怪的是,我在这个特定的 .h 文件中有大约 20 个函数,其余的都链接得很好,除了 3 个函数。
有什么想法吗?
【问题讨论】:
-
您能否发布未链接的函数的代码(可能是用于比较的函数之一)?
-
"...所以这不应该是问题。" -> “应该”在大多数情况下是一个非常危险的词;)
标签: c++ linker unresolved-external