小编use*_*036的帖子

尝试在 Visual Studio 中静态链接 SDL

我正在使用 Microsoft Visual Studio 2013 Express for Windows Desktop,用 C++ 编写并使用 SDL 2.0.3 库。我正在尝试构建一个独立的.exe,它可以在其他计算机上运行而无需安装任何东西。

我已经按照TwinklebearDev 第 0 课:设置 SDL设置了我的项目。我链接到该库的 x86 版本,并将 x86 版本的 SDL2.dll 放置在 Debug 文件夹和 Release 文件夹中。这是源代码:

#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;
}
Run Code Online (Sandbox Code Playgroud)

这工作完美并返回 0,直到我尝试静态链接。我尝试通过右键单击项目并单击属性,然后设置以下内容来静态链接:

配置属性 > C/C++ > 代码生成 > 运行时库 > 多线程 (/MT)

然后我收到一堆错误:

警告 1 警告 LNK4098:defaultlib 'msvcrt.lib' 与其他库的使用冲突;使用 /NODEFAULTLIB:库 …

static-linking visual-c++ sdl-2

3
推荐指数
1
解决办法
9856
查看次数

标签 统计

sdl-2 ×1

static-linking ×1

visual-c++ ×1