这个问题不是讨论该相同错误的cannot open file 'SDL2.lib'的重复,但是我的问题是我没有SDL2.lib文件,如果我能看到它,我就可以完成这项工作
我正在按照Lazy Foo的教程来设置SDL2的开发环境。
Setting up SDL 2 on Visual Studio 2010 Ultimate
该教程适用于Visual Studio 2010,我正在使用Visual Studio Community Edition2017。这有问题吗?
问题是在链接库时开始的,我从SDL version 2.0.8 (stable)下载的SDL2 Windows开发库的lib目录中没有x86或x64文件夹。
因此,我将其指定为lib/
,而不是本教程中所说的lib/x86
。
这些是lib
文件夹中的文件
$ ls
cmake/ libSDL2.dll.a libSDL2_test.a libSDL2main.a pkgconfig/
libSDL2.a libSDL2.la libSDL2_test.la libSDL2main.la
构建VS2017时抛出错误,提示Cannot open file 'SDL2.lib'
。是的,没有这样的文件。我需要执行其他步骤来获取此文件吗?
当我为CodeBlocks配置它时,它工作正常。我到底在做什么错?这可能有一个明显的答案,但我找不到它。
答案 0 :(得分:1)
库名`libSDL2.dll.a'表示它不打算与VS C ++一起使用(对于动态链接,您需要dll + lib,对于静态链接,您仅需要lib)。您可以使用dumpbin.exe和lib.exe从dll构造一个lib文件。您的选择是:
1)从GitHub下载zip格式的SDL源文件并创建您自己的二进制文件。
2)使用vcpkg并仅在一个命令行中安装(建议)。
3)从Internet下载SDL二进制文件。 (如果项目配置与您的配置不匹配,则可能会出现链接器问题)