Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CMake找不到SDL2_Cmake_Sdl 2 - Fatal编程技术网

CMake找不到SDL2

CMake找不到SDL2,cmake,sdl-2,Cmake,Sdl 2,我想添加到我的项目中。但是,它不附带预编译文件。它要求我自己用cmake构建库,我对此并不熟悉。它的一个依赖项是SDL2。所以我下载了sdl2开发库文件夹。在cmake中,我单击配置并选择生成器。处理几秒钟后,会弹出一个窗口,显示错误:配置过程项目文件中的错误可能无效 这就是日志屏幕显示的内容: C编译器标识为MSVC 18.0.40629.0CXX 编译器标识为MSVC 18.0.40629.0检查工作C 编译器使用:Visual Studio 12 2013检查C编译器是否正常工作 使用:V

我想添加到我的项目中。但是,它不附带预编译文件。它要求我自己用
cmake
构建库,我对此并不熟悉。它的一个依赖项是SDL2。所以我下载了sdl2开发库文件夹。在cmake中,我单击配置并选择生成器。处理几秒钟后,会弹出一个窗口,显示错误:
配置过程项目文件中的错误可能无效

这就是日志屏幕显示的内容:

C编译器标识为MSVC 18.0.40629.0
CXX 编译器标识为MSVC 18.0.40629.0
检查工作C 编译器使用:Visual Studio 12 2013
检查C编译器是否正常工作 使用:Visual Studio 12 2013--works
检测C编译器ABI 信息
检测C编译器ABI信息-完成
检查是否工作 CXX编译器使用:Visual Studio 12 2013
检查CXX是否正常工作 编译器使用:Visual Studio 12 2013--用于检测CXX 编译器ABI信息
检测CXX编译器ABI信息-完成
检测CXX编译功能
检测CXX编译功能- 已完成
C:/Program文件中的CMake错误 (x86)/CMake/share/CMake-3.4/Modules/FindPackageHandleStandardArgs.CMake:148 (消息):找不到SDL2(缺少:SDL2_INCLUDE_DIR) SDL2_库)
调用堆栈(最新调用优先):

C:/程序文件 (x86)/CMake/share/CMake-3.4/Modules/FindPackageHandleStandardArgs.CMake:388 (_FPHSA_FAILURE_MESSAGE)cmake/FindSDL2.cmake:18 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)CMakeLists.txt:30(FIND_PACKAGE)

配置不完整,出现错误
另请参见“E:/game” dev/libraries/libSDL2pp master/build/CMakeFiles/CMakeOutput.log.“


谁能告诉我该怎么办?我不确定我做的事情是否正确。谢谢。

默认情况下,cmake没有用于查找sdl2的模块。这很可能就是您在cmake/FindSDL2.cmake中提供自己的文件的原因。在windows上,您很可能需要设置一个环境变量以指向sdl2安装目录(但这实际上取决于您使用的FindSDL2.cmake)。

您需要安装sdl2(您安装了),并且您必须告诉cmake在哪里查找它。只需编辑输出中提到的变量(SDL2_INCLUDE_DIR SDL2_库)。编辑变量是什么意思?你能解释得更详细一点吗?使用CMake Gui,你可以得到一个变量列表。或者在生成目录中编辑cmakcache.txt。您可以修改SDL 1.2模块。。。