我正在 VC++ 中以发布模式编译我的项目。我有一个 .def 文件,我在其中声明了 setLog,现在我收到以下错误
链接... 创建库 Release/HKL.lib 和对象 Release/HKL.exp HKL_libinterface.obj:错误 LNK2001:未解析的外部符号 _SCTP_setLog@8
请帮助我解决上述问题。
谢谢
我正在 VC++ 中以发布模式编译我的项目。我有一个 .def 文件,我在其中声明了 setLog,现在我收到以下错误
链接... 创建库 Release/HKL.lib 和对象 Release/HKL.exp HKL_libinterface.obj:错误 LNK2001:未解析的外部符号 _SCTP_setLog@8
请帮助我解决上述问题。
谢谢
在我看来,您在调试版本中配置了一个不在发布版本中的 lib 文件。您的setLog()
函数似乎不是链接器抱怨的函数 - 听起来它没有找到名为SCTP_setLog()
.
查看您在项目的调试配置中配置的库列表,并确保它们也在发布配置中进行了配置。
正如Sharptooth 提到的,您很可能没有在您的发布版本中编译上述功能。除了查找“从构建中排除”之外,请检查您是否有任何定义集(或未设置)会从发布构建中排除缺少的功能。
如果这在调试模式下编译,最可能的原因是不知何故,实现此功能的代码未包含在构建中 - 例如,实现它的 cpp 文件已设置“从构建中排除”。