首页 文章

如何在Qt Creator中使用SDL2 - Windows

提问于
浏览
1

我正在努力使用SDL2和Qt Creator,并在SO上发现了一些主要有用的线程,但在Windows 10上没有任何内容可以将它们整合在一起用于SDL2和Qt Creator . 主要问题是我无法使用控制台进行I / O与SDL2同时并遵循其他建议,出现了许多不同的问题 .

有两个键:

  • 使用哪个SDL2.dll文件以及放置它的目录 .
    有人说使用从SDL网站下载的SDL2.dll文件 . 其他人说把这个文件放在主项目目录中,这对我来说不起作用 . 对我有用的是首先构建我的项目(失败),但创建了一个"build-..."目录 . 然后,从installDir \ SDL2-2.0.5 \ i686-w64-mingw32 \ bin获取SDL2.dll文件并将其放在"build-..."目录中 .

  • 在project.pro文件中,手动添加:
    INCLUDEPATH = installDir / SDL2-2.0.5 / i686-w64-mingw32 / include
    LIBS = -L installDir / SDL2-2.0.5 / i686-w64-mingw32 / lib -lmingw32 -mwindows -mconsole -lSDL2main -lSDL2
    CXXFLAGS = -std = c 11

说实话,我不知道是否需要LIBS中的所有呼叫,但它现在对我来说非常合适,我想我会分享一些知识 .

1 回答

  • 0

    Where to put the DLL

    dll必须位于符合以下规则之一的目录中:

    • 是$ PATH $环境变量的一部分

    • 与可执行文件位于同一目录中

    • 位于代码中有效指定并加载"manually"的目录中 .

    在我的情况下,我只是将这些DLL移动到我的/ bin文件夹 .

    Libs and includes

    编译器需要包含,为此,以下两种可能性匹配:

    • 复制SDL包含在编译器中的include目录 .

    • 使用 INCLUDEPATH 添加项目的包含路径,如@launchpadmcquack所述 .

    链接器需要Libs,为此,以下两种可能性匹配:

    • 复制编译器lib目录中的SDL库 .

    • 如问题中所述,使用 LIBS 将lib添加到项目中 .

    考虑到库列表,需要 SDL2 ,其他依赖于您的特定项目 . 例如 . 在我的情况下,我没有链接任何mingw32,mwindows或mconsole .

    附加说明:您可以使用 CONFIG 参数指定C 11:

    CONFIG *= c++11
    

相关问题