OpenCV - Build_ZLIB
在编译OpenCV需要链接到第三方库,OpenCV已经为我们准备并放置在3rdparty下。
这里比较特殊的是BUILD_ZLIB,在Windows下,如何设置BUILD_ZLIB为false,在编译时,依然
会编译并使用3rdparty下的zlib,发生这种现象的原因是下面的一段cmake,
位于cmake/OpenCvFindLibsGrfmt.cmake中。
1 | # --- zlib (required) --- |
从上面的cmake片段我们可以知道,zlib在OpenCV的编译中是必须的,默认,BUILD_ZLIB设置
为true,这时,ZLIB_FOUND会被清理,总是会进入第二个if(NOT ZLIB_FOUND), add_subdirectory("${OpenCV_SOURCE_DIR}/3rdparty/zlib")。如果将BUILD_ZLIB
设置为false,则会先进入第一个if(BUILD_ZLIB)的else中,尝试通过find_package(ZLIB "${MIN_VER_ZLIB}")
查找系统中的zlib(这也是为什么在MacOS中设置BUILD_ZLIB=false会起作用,因为zlib已经
成为MacOS的一部分)
