0

我正在使用 Windows 7 上的 cmake 构建 OpenHEVC ( https://github.com/OpenHEVC/openHEVC ) 到 VS2010 项目。

在根目录的 CMakeLists.txt 中,我找到以下行:

include_directories(. ${SDL_INCLUDE_DIR} wrapper_hm/src/Lib)

我认为“${SDL_INCLUDE_DIR}”应该是 SDL 库(http://www.libsdl.org/download-1.2.php)。

我的问题是,在下载 SDL 库并设置一个名为“SDL_INCLUDE_DIR”的新环境变量后,该变量包含 SDL 的路径(我可以在命令行中“回显 %SDL_INCLUDE_DIR%”)。CMake 只是不断给我这个(即使在重新启动 Cmake 之后):

''' CMake 错误:此项目中使用了以下变量,但它们设置为 NOTFOUND。请设置它们或确保它们在 CMake 文件中正确设置和测试: SDL_INCLUDE_DIR 用作目录 C 中的包含目录:/Users/Administrator/Desktop/Pure265/openHEVC-master/openHEVC-master 用作目录 C 中的包含目录: /用户/管理员/桌面/Pure265/openHEVC-master/openHEVC-master/wrapper_hm

配置不完整,出现错误!'''

我很困惑为什么 cmake 找不到环境变量。(我是 Cmake 的新手,但我在这里检查过:http : //www.cmake.org/Wiki/CMake_Useful_Variables ${SDL_INCLUDE_DIR} 应该反映到 env 变量中。)

4

1 回答 1

2

${SDL_INCLUDE_DIR}不是环境变量。它只是一个可能在 FindSDL.cmake 脚本中设置的 CMake 变量。您可以看到,因为环境变量具有 $ENV{variable_name} sintax。

您应该安装 SDL 库的开发版本。如果您查看 FindSDL.cmake 脚本,您将看到脚本在哪里搜索头文件和 lib 文件。据我所知,您必须将 SDLDIR 环境变量设置为指向 SDL 库的根文件夹。

于 2013-04-24T07:05:26.490 回答