debugging LNK2001错误发生在生成时,但不是通过调试

q9yhzks0  于 2023-06-23  发布在  其他
关注(0)|答案(1)|浏览(54)

我用Allegro 5写了一个程序,想在Visual Studio 19中构建它,但构建日志指出,当我尝试初始化我正在使用的Allegro插件时,有一些LNK 2001错误。
日志:

Backend.obj : error LNK2001: unresolved external symbol __imp__al_init_image_addon
Backend.obj : error LNK2001: unresolved external symbol __imp__al_init_ttf_addon
Backend.obj : error LNK2001: unresolved external symbol __imp__al_init_font_addon
Backend.obj : error LNK2001: unresolved external symbol __imp__al_draw_filled_triangle
Backend.obj : error LNK2001: unresolved external symbol __imp__al_init_primitives_addon
E:\Projects\AllegroProgramm\Release\Allegro.exe : fatal error LNK1120: 5 unresolved externals

这些是我的包括:

#include "allegro5/allegro.h"
#include "allegro5/allegro_image.h"
#include "allegro5/keyboard.h"
#include "allegro5/keycodes.h"
#include "allegro5/allegro_native_dialog.h"
#include "allegro5/allegro_ttf.h"
#include "allegro5/allegro_font.h"
#include "allegro5/allegro_primitives.h"

这就是我如何称呼al_init_...功能:

al_init();
al_install_mouse();
al_install_keyboard();
al_init_image_addon();
al_init_font_addon();
al_init_ttf_addon();
al_init_primitives_addon();

正如我所说,在调试模式下,它工作,但不是在发布,我不知道为什么!
谢谢

nbysray5

nbysray51#

在VisualStudio中,大多数项目配置对于调试和发布模式是分开的。
您可能在Debug模式下添加了Allegro库(.lib文件),但忘了在Release模式下也添加它。

相关问题