我有一个奇怪的错误,整天困扰着我。我有一个已编译的库函数。我静态链接该库以在单独的控制台应用程序中对其进行测试,所有内容都可以正常构建和运行。目前,它只是一个名为sqrtval的简单sqrt函数。但是,当将此库包含在较大的图形项目中时,会出现链接器错误。我已经在控制台应用程序(有效)和图形主应用程序(无效)中相同地设置了其他库目录和其他依赖项设置。错误如下。

1个


  
    Microsoft(R)Windows(R)资源编译器版本6.1.6723.1
    1>版权所有(C)Microsoft Corporation。
    版权所有。 1>正在链接...
    1> MainAppWindow.obj:错误LNK2019:
    未解析的外部符号“ double
    __cdecl sqrtval(double)”(?sqrtval @@ YANN @ Z)在
    功能“公开:虚空
    __thiscall MainComponent :: sliderValueChanged(class
    juce ::滑块*)“
    (?sliderValueChanged @ MainComponent @@ UAEXPAVSlider @ juce @@@@ Z)
    1> .... \ bin \ Debug \ tutorial.exe:致命的
    错误LNK1120:1个未解决的外部

最佳答案

如果您的库是用纯C语言编写的,则必须将sqrtval声明为:

extern "C" double sqrtval(double);

09-25 18:53