在我的项目中链接时出现未解决的符号错误。我链接到一个外部库,是的,我已经正确设置了配置,但是在调试时它为外部库中的每个类输出以下错误:
error LNK2001: unresolved external symbol __CAP_EXIT_Function
proj 使用与外部库相同的运行时 dll 并链接到 lib 的调试版本。
关于去哪里的任何线索?
顺便说一句,我正在使用 VS2008
谢谢
在我的项目中链接时出现未解决的符号错误。我链接到一个外部库,是的,我已经正确设置了配置,但是在调试时它为外部库中的每个类输出以下错误:
error LNK2001: unresolved external symbol __CAP_EXIT_Function
proj 使用与外部库相同的运行时 dll 并链接到 lib 的调试版本。
关于去哪里的任何线索?
顺便说一句,我正在使用 VS2008
谢谢
似乎您正在使用/callcap 开关,但没有定义回调函数。请参阅上一个链接并实现回调函数。
对于其他库链接错误。检查以确保您在链接器属性的附加包含部分中指定了 .lib 文件?
此外,如果您在与您的项目相同的解决方案中有一个 vcproj 文件,您可以右键单击您的项目并为其他库设置依赖项。这样,您就不需要如上所述指定额外的库。
您是否包括所有可能需要的头文件?您仍然需要添加
#include "MyDll.h"
即使在添加对 dll 的引用并将其所在的目录添加到包含目录路径之后。然后你可以像这样使用dll中的函数。
MyDll::MyFunctions::Function();
该库是C库吗?在这种情况下,您需要标头中的函数的外部“C”,也许缺少?
例如
extern "C"
{
void foo();
...
}
或者
extern "C" void foo();