2

我第一次尝试使用libsndfile(它是windows 64位版本),在尝试链接时遇到了问题。每当我尝试编译程序时,都会收到此错误:

错误 LNK2019:函数 _main 中引用的未解析的外部符号 _sf_close

到目前为止,这是我尝试将其链接到程序的过程。

在项目属性中,我去了 Config。Prop.-> VC++ 目录,并将头文件的路径添加到包含目录选项卡,将.lib 文件的路径添加到库目录选项卡。

在 C/C++-> General-> Additional Include Directories 中,我添加了头文件的路径。

在 Linker->Input->Additional Dependencies 我添加了 .lib 文件的路径,对我来说是 C:\Program Files\Mega-Nerd\libsndfile\lib\libsndfile-1.lib

我已将#include "sndfile.h" 添加到 .cpp 文件中,但由于某种原因,它似乎无法访问 dll 中的函数。我真的不太了解链接,我所做的只是我从互联网上搜索到的拼凑而成,所以我不确定我做错了什么。任何帮助是极大的赞赏。

4

1 回答 1

1

您可能正在 Visual Studio 中编译一个 32 位项目,并尝试将其与 64 位库链接。它不起作用...下载 libsndfile 的 32 位版本的 windows 二进制文件并使用它链接到您的可执行文件。另一种选择是创建一个 64 位项目,但我认为第一种选择(稍微)更容易。

于 2012-08-15T13:23:35.850 回答