首页 > 解决方案 > 如何修复 SDL2main.lib 中的所有这些未定义项?

问题描述

尝试使用 VS Code 配置 SDL2(顺便说一句,有人应该制作一个关于如何做到这一点的 Youtube 视频,到目前为止我花了一个半星期的时间),当这些可爱的错误弹出时,我认为我几乎完成了:

C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_OutOfMemory]+0xf): undefined reference to `SDL_ShowSimpleMessageBox'
C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_main_utf8]+0x4): undefined reference to `SDL_SetMainReady'
C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_main_getcmdline]+0xc): undefined reference to `SDL_wcslen'
C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_main_getcmdline]+0x21): undefined reference to `SDL_iconv_string'
C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_main_getcmdline]+0x3c): undefined reference to `SDL_ShowSimpleMessageBox'
C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_main_getcmdline]+0xb8): undefined reference to `SDL_malloc'
C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_main_getcmdline]+0xd3): undefined reference to `SDL_ShowSimpleMessageBox'
C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_main_getcmdline]+0xe9): undefined reference to `SDL_SetMainReady'
C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_main_getcmdline]+0xf8): undefined reference to `SDL_free'
C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_main_getcmdline]+0xfe): undefined reference to `SDL_free'
C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_wmain]+0x13): undefined reference to `SDL_malloc'
C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_wmain]+0x2c): undefined reference to `SDL_wcslen'
C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_wmain]+0x43): undefined reference to `SDL_iconv_string'
C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_wmain]+0x61): undefined reference to `SDL_SetMainReady'
C:/MinGW/bin/SDL2main.lib(Win32/Release/SDL_windows_main.obj):(.text[_wmain]+0x73): undefined reference to `SDL_free'
collect2.exe: error: ld returned 1 exit status
The terminal process terminated with exit code: 1

这是我的 tasks.json 文件的样子:

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "echo",
            "type": "shell",
            "command": "g++",
            "args": [
               "-g",
               "-o",
               "C:/MinGW/bin/SDL2.dll",
               "C:/MinGW/bin/main.cpp",
               "C:/MinGW/bin/SDL2.lib",
               "C:/MinGW/bin/SDL2main.lib",
               "-lmingw32",
               "-mwindows"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "problemMatcher": [
                "$gcc"
            ]
        },
    ]
}

我在做什么来得到所有这些错误?关于 SDL2main.lib 我必须解决什么问题?一个答案会让我很高兴:)

标签: c++jsonvisual-studio-codesdllibraries

解决方案


推荐阅读