不久前,你们中的一些人建议我使用 FreeImage 作为 C++ 中图像处理的库。
我现在在让图书馆工作方面遇到了一些麻烦(这里还是比较新的)。
我尝试加载各种 vcxproj 和 sln 磁贴,它们给了我一个空白项目。由于没有为此提供任何安装说明,因此我放弃了将其作为 Visual Studio 解决方案。
接下来我尝试了使用 Makefile 编译源代码的老式方法,然后将“FreeImage/Source”添加到链接器。虽然当我调用 FreeImage.h 中声明的函数时 IDE 没有引发任何危险信号,但它在编译期间给了我一堆“错误 LNK2019:未解析的外部符号”,就好像这些函数不存在一样。我怀疑 IDE 找不到定义上述函数的 .cpp 文件,但是当我将 FreeImage/Source/FreeImage 添加到链接器时,我仍然遇到同样的问题。
现在,当我直接包含一些 .cpp 文件(即 Plugin.cpp 和 FreeImage.cpp)进行测试时,我得到了更多未解决的外部符号错误以及诸如“不一致的 dll 链接”之类的东西......对于例如 FreeImage.cpp:
const char * DLL_CALLCONV
FreeImage_GetVersion() {
static char s_version[16];
sprintf(s_version, "%d.%d.%d", FREEIMAGE_MAJOR_VERSION, FREEIMAGE_MINOR_VERSION, FREEIMAGE_RELEASE_SERIAL);
return s_version;
}
所以,我完全被困住了。我究竟做错了什么?我觉得我已经按照适当的步骤添加库依赖项,例如将作为直接父级的特定文件夹添加到 C/C++ 中的相关 .h 和 .cpp 文件 -> 常规 -> 附加包含的目录和链接器 -> 常规-> 添加库目录。
一些帮助将不胜感激!