我正在尝试将 ImageMagick Magick++ 用于 VS2010 中的 C++ 项目。我从这里安装了库:klick
然后在我的项目中,我将 c:/program files/ImageMagick-6.6.6-Q16/include 添加到包含文件夹中。然后我尝试在这段代码中使用 Magick++:
#include <Magick++.h>
void main(int argc, char ** argv){
InitializeMagick(*argv);
}
但这不起作用!VS2010 返回以下错误:
error LNK2001: unresolved external symbol "__declspec(dllimport) void __cdecl Magick::InitializeMagick(char const *)" (__imp_?InitializeMagick@Magick@@YAXPBD@Z)
error LNK1120: 1 unresolved externals
我究竟做错了什么?
非常感谢您的帮助!
更新:
将链接器 -> 输入 -> 附加依赖项设置为:
kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;CORE_RL_Magick++_.lib
和链接器 -> 常规 -> 附加库目录到:
C:\Program Files\ImageMagick-6.6.6-Q16\lib
它仍然导致相同的错误...
更新 2
打开 C:\Program Files\ImageMagick-6.6.6-Q16\lib 中的 .lib 文件会导致此错误:
更新 3
CORE_RL_Magick++_.lib 确实包含 ?InitializeMagick@Magick@@YAXPBD@Z,但不包含 ?InitializeMagick@Magick@@YAXPBD@Z。这是否意味着 .lib 文件已损坏?
更新 4
我通过手动编译 .lib 文件解决了我的问题。谢谢大家!