我已经下载了cmake 3.10.x和当前protobuf源代码3.6.1。使用cmake,我创建了bin目录“{PROTOBUF_SOURCE_DIR}/bin”,成功地构建了这个库。下一步我想在基于cmake的项目中使用这个自定义树。我有
set ( Protobuf_USE_STATIC_LIBS ON )
find_package( Protobuf REQUIRED )
if ( Protobuf_FOUND )
message( STATUS "Protobuf version : ${Protobuf_VERSION}" )
message( STATUS "Protobuf include path : ${Protobuf_INCLUDE_DIRS}" )
message( STATUS "Protobuf libraries : ${Protobuf_LIBRARIES}" )
else()
message( WARNING "Protobuf package not found -> specify search path via PROTOBUF_ROOT variable")
endif()
但是如何为cmake指定自定义目录树来查找必要的内容。
如果我用
find_package( Protobuf REQUIRED PATHS ${PROTOBUF_ROOT}/bin/lib/cmake/protobuf )
然后我看到cmake的以下输出:
Protobuf version : 3.6.1
Protobuf include path :
Protobuf libraries :
如何使cmake查找包含路径、库和protoc编译器?