MVS2015不断提供"未解决的外部因素" SDL2出错

时间:2015-11-30 01:54:44

标签: c++ sdl

我试图让SDL与我的MVS2015一起工作到目前为止没有成功,我真的想让它发挥作用,所以我将解释我所做的每一步。首先,我从SDL安装指南https://wiki.libsdl.org/Installation下载了预构建SDL2库,然后解压缩。在MVS2015中创建了一个新的控制台应用程序,打开了项目属性页面并设置了" Include Directories"正确地说,我对它进行了三重检查,也为#34;图书馆目录"做了这个。然后我去了#34; Linker" - > "输入"并将SDL2.lib添加到"附加依赖项"。到目前为止这么好,我的代码现在应该与SDL一起使用吗?我做了一个简短的主要测试是否有效:

#include <SDL.h>
int main(){ 
SDL_Init(SDL_INIT_EVERYTHING);
SDL_Quit();
return 0;}

如果我构建它,我会收到以下错误消息:

Severity    Code    Description Project File    Line
Error   LNK1120 1 unresolved externals  sdltry4 c:\users\myuser\documents\visual studio 2015\Projects\sdltry4\Debug\sdltry4.exe 1
Error   LNK2019 unresolved external symbol _WinMain@16 referenced in function "int __cdecl __scrt_common_main_seh(void)" (?__scrt_common_main_seh@@YAHXZ)   sdltry4 c:\Users\Bandan\documents\visual studio 2015\Projects\sdltry4\sdltry4\MSVCRT.lib(exe_winmain.obj)   1

真的会帮助你。

1 个答案:

答案 0 :(得分:6)

您需要在包含主SDL标头之前添加此定义:

#define SDL_MAIN_HANDLED
#include "SDL.h"

SDL.h包含SDL_main.h,它有一点关于想要使用自己的WinMain定义,可以禁用,因为你有自己的主。