我正在尝试构建一个需要 SDL 的程序。我已经下载了适用于 Windows 的 SDL,这样我就有了一个包含 include 和 lib 子订单的文件夹。
当我运行 CMake 时,出现以下错误:
Could NOT find SDL (missing: SDL_LIBRARY SDL_INCLUDE_DIR)
尽管我创建了两个名为 SDL_LIBRARY 和 SDL_INCLUDE_DIR 的环境变量,这两个变量分别指向 lib 和 include 文件夹。
我不知道该怎么做。
我正在尝试构建一个需要 SDL 的程序。我已经下载了适用于 Windows 的 SDL,这样我就有了一个包含 include 和 lib 子订单的文件夹。
当我运行 CMake 时,出现以下错误:
Could NOT find SDL (missing: SDL_LIBRARY SDL_INCLUDE_DIR)
尽管我创建了两个名为 SDL_LIBRARY 和 SDL_INCLUDE_DIR 的环境变量,这两个变量分别指向 lib 和 include 文件夹。
我不知道该怎么做。
根据我的经验,当 find 脚本无法按预期工作时,最好的方法是检查它们的源代码。通常,您只需阅读顶部的文档即可确定问题,但如果仍然无法解决问题,那么深入研究源代码通常是唯一有帮助的方法。
例如,仅从文档中您就可以看到,CMake 只考虑一个环境变量SDLDIR
进行搜索。SDL_INCLUDE_DIR
并且SDL_LIBRARY
是保存查找脚本结果的 CMake 变量的名称。您可以通过命令行(或cmake-gui
)设置它们,但我建议不要这样做,因为它首先破坏了使用查找脚本的目的。
相反,请验证您的目录结构是否与查找脚本所期望的相符,并进行相应的设置SDLDIR
。
请注意,当前 CMake 附带的脚本不适用于较新的 SDL2。如果您使用的是 SDL2,则必须编写自己的脚本。