【发布时间】:2024-01-04 16:20:01
【问题描述】:
我正在使用 FreeType 库在 Visual Studio 2015 中编译程序。之前,我使用同一个项目使用库编译了一个带有我自己的 Font 类(和许多其他东西)的静态库。一切都很好,课堂效果很好。但是,我最近将项目更改为 Windows 应用程序,将 Properties->General->Configuration Type 更改为 Application (.exe)。这样,我可以同时编写程序和编辑代码,而无需复制所有 20 多个文件。
在编写了我的简单程序(与问题无关)并尝试重新编译后,我遇到了许多以前没有遇到的错误。它们如下:
LNK2001 未解析的外部符号 __imp__strncpy [...]\freetype.lib(ftbase.obj)
LNK2001 无法解析的外部符号 __imp__fread [...]\freetype.lib(ftsystem.obj)
LNK2001 未解析的外部符号 __imp__realloc [...]\freetype.lib(ftsystem.obj)
LNK2001 未解析的外部符号 __imp__strstr [...]\freetype.lib(truetype.obj)
LNK2001 未解析的外部符号 __except_handler4_common [...]\MSVCRT.lib(_chandler4gs_.obj)
网上关于这些的信息似乎很少,更不用说这个特殊的案例了。当我编译为静态库时一切都很好。我之前已经切换到编译.exe,然后它也工作得很好。我过去处理过未解决的外部问题,但这似乎令人费解。
我正在链接
#pragma comment(lib, "freetype.lib")。 freetype.lib 存在并且在正确的目录中。
我包括:
#include <ft2build.h>
#include FT_FREETYPE_H
如果重要的话,我的程序是用 C++ 编写的,并且我也在链接其他库。任何帮助表示赞赏。
【问题讨论】:
标签: visual-studio-2015 linker unresolved-external freetype