我想使用 cmake 在 Windows 上构建 OpenImageIO,但遇到以下问题:cmake 停止项目生成过程,因为它找不到 OpenImageIO 所需的第三方库。
这是我所做的(我遵循了在 Windows 上构建 OIIO 的官方指南):
- 从他们的 github repo 下载了当前的 OpenImageIO 发布分支。并将其复制到 D:/libraries/oiio
- 把预编译好的外部库下载 下来放到D:/libraries/oiio/external
- 已下载 Windows 的 Qt4 二进制文件。将它们放入 D:/qt 并将路径 D:/libraries/qt/bin 添加到我的 PATH 中。
- 下载的预编译 BOOST 库(1.60 版)它们位于 D:/libraries/BOOST。
- 安装 cmake 并运行 cmake-gui:
- 将源路径设置为包含 CMake 的 OIIO 根目录
- 设置输出路径为 D:/oiio/
- 添加了指向 D:/libraries/oiio/external/windows/dist 的 THIRD_PARTY_TOOLS_HOME
- 添加 BOOST_ROOT 并使其指向 D:/libraries/BOOST
- 设置 USE_PYTHON = 0 和 USE_TBB = 0
所以基本上从我的角度来看,我做了安装说明告诉我要做的一切。但是当我点击“配置”时,我得到以下输出形式 cmake-gui :
The C compiler identification is MSVC 19.0.23918.0
The CXX compiler identification is MSVC 19.0.23918.0
Check for working C compiler using: Visual Studio 14 2015 Win64
Check for working C compiler using: Visual Studio 14 2015 Win64 -- works
Detecting C compiler ABI info
Detecting C compiler ABI info - done
Check for working CXX compiler using: Visual Studio 14 2015 Win64
Check for working CXX compiler using: Visual Studio 14 2015 Win64 -- works
Detecting CXX compiler ABI info
Detecting CXX compiler ABI info - done
Detecting CXX compile features
Detecting CXX compile features - done
Project build dir = P:/libraries/oiio/build
CMAKE_CXX_COMPILER is C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe
CMAKE_CXX_COMPILER_ID is MSVC
Setting Namespace to: OpenImageIO
platform = windows
CMake Error at C:/Program Files (x86)/CMake/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
Call Stack (most recent call first):
C:/Program Files (x86)/CMake/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
C:/Program Files (x86)/CMake/share/cmake-3.5/Modules/FindZLIB.cmake:124 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
src/cmake/modules/FindOpenEXR.cmake:22 (find_package)
src/cmake/externalpackages.cmake:70 (find_package)
CMakeLists.txt:303 (include)
Configuring incomplete, errors occurred!
See also "P:/libraries/oiio/build/CMakeFiles/CMakeOutput.log".
我已经尝试了很多东西,包括手动设置 ZLIB_LIBRARY 和 ZLIB_INCLUDE_DIR 但随后它抱怨找不到上述任何一个或抱怨找不到下一个第三方库。
我还尝试将 CMAKE_PREFIX_PATH 添加到 cmake-gui 并将其设置为它无法找到的路径,但它没有任何帮助。
然后我尝试只使用反斜杠,因为我读到了一些关于这可能是一个问题但它也没有帮助的东西。
我正在使用带有 cmake 3.5.2 的 Windows 7 64 位机器
我真的很感激任何帮助,因为到目前为止我不知道我能做什么。
提前致谢 !