我试图让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
真的会帮助你。
答案 0 :(得分:6)
您需要在包含主SDL标头之前添加此定义:
#define SDL_MAIN_HANDLED
#include "SDL.h"
SDL.h包含SDL_main.h,它有一点关于想要使用自己的WinMain定义,可以禁用,因为你有自己的主。