PROTOBUF_GENERATE_CPP 如何知道从哪里获取 protoc 二进制文件?
我已经在本地编译了 protobuf,并且想将我的 CMakeLists.txt 指向已安装的二进制文件( myfolder/protobuf-install/bin/protoc )而不是系统二进制文件( /usr/bin/protoc )
通常对于 Boost,我只需将 BOOST_ROOT 设置为我安装的文件夹,它就会找到所有的 include_directories、库等。
Protobuf应该怎么做。我在 FindProtobuf.cmake 中没有看到任何前缀选项。
set( Protobuf_SRC_ROOT_FOLDER "${CMAKE_SOURCE_DIR}/myfolder/")
find_package(Protobuf MODULE REQUIRED)
错误是
file STRINGS file "/usr/include/google/protobuf/stubs/common.h" cannot be read.
Call Stack (most recent call first):
CMakeLists.txt:17 (find_package)
当然,上面的路径是在 myfolder/ 中,而不是在系统文件夹中。但是,当我将根路径明确声明为 myfolder/ 时,为什么 protobuf 会在系统路径中寻找包含