【问题标题】:MS visual studio 2013 SDL not workingMS Visual Studio 2013 SDL 不工作
【发布时间】:2015-02-23 12:10:07
【问题描述】:

我在我的项目中使用 SDL,但遇到了问题。我遵循了有关如何在 MS Visual Studio here 中包含 SDL 的教程,但它没有帮助。以下是我采取的步骤。

首先,我在C/C++/General“附加输入目录”块中添加了SDL输入目录:

其次,我在 Linker/General "Additional library directory" 块中添加了 SDL lib 目录:

第三,我将 SDL2.lib;SDL2main.lib 添加到 Linker/input 下的“Additional dependencies”部分:

最后,我将 Linker / system 下的子系统部分设置为 Console (/SUBSYSTEM:CONSOLE):

但是,当我尝试运行教程提供的测试代码时,这不起作用:

#include <iostream>
#include <SDL.h>

int main(int argc, char **argv){
    if (SDL_Init(SDL_INIT_EVERYTHING) != 0){
        std::cout << "SDL_Init Error: " << SDL_GetError() << std::endl;
        return 1;
    }
    SDL_Quit();

    return 0;
}

因为我在调试时遇到了这些构建错误:

1>------ Build started: Project: Project2, Configuration: Debug Win32 ------
1>start.obj : error LNK2019: unresolved external symbol _SDL_GetError referenced in function _SDL_main
1>start.obj : error LNK2019: unresolved external symbol _SDL_Init referenced in function _SDL_main
1>start.obj : error LNK2019: unresolved external symbol _SDL_Quit referenced in function _SDL_main
1>MSVCRTD.lib(crtexe.obj) : error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup
1>c:\users\holger\documents\visual studio 2013\Projects\Game\Debug\Project2.exe : fatal error LNK1120: 4 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

我认为我很好地遵循了教程,但显然不是。请帮帮我!

提前谢谢你!

干杯工程师

【问题讨论】:

    标签: c++ visual-studio-2013 linker dependencies sdl


    【解决方案1】:

    错误似乎是您正在构建一个 32 位应用程序,但指向 64 位库。

    你的错误:

    Build started: Project: Project2, Configuration: Debug Win32

    但是您设置的库目录有x64 作为子目录。

    【讨论】:

    • 现在它说 SDL2.dll 从计算机中丢失,即使我在 input/x86 中看到它...对不起,我一直在讨论这个
    • 缺少 DLL 在构建阶段之外。一个简单的解决方法是将 DLL 安装在 PATH 或应用程序的可执行目录中的目录中。否则,按照 Windows 解析 DLL 的方法:msdn.microsoft.com/en-us/library/windows/desktop/…
    猜你喜欢
    • 1970-01-01
    • 2013-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-30
    • 2015-12-13
    • 1970-01-01
    • 2015-07-27
    相关资源
    最近更新 更多