CMakeList中自动编译protobuf文件
可以使用下面的命令:
protobuf_generate_cpp
protobuf_generate_python
例如:
find_package(Protobuf REQUIRED)
include_directories(${Protobuf_INCLUDE_DIRS})
include_directories(${CMAKE_CURRENT_BINARY_DIR})
protobuf_generate_cpp(PROTO_SRCS PROTO_HDRS foo.proto)
protobuf_generate_cpp(PROTO_SRCS PROTO_HDRS EXPORT_MACRO DLL_EXPORT foo.proto)
protobuf_generate_cpp(PROTO_SRCS PROTO_HDRS DESCRIPTORS PROTO_DESCS foo.proto)
protobuf_generate_python(PROTO_PY foo.proto)
add_executable(bar bar.cc ${PROTO_SRCS} ${PROTO_HDRS})
target_link_libraries(bar ${Protobuf_LIBRARIES})
``
CMakelists设置不同版本的protobuf 指定路径寻找
find_package(protobuf REQUIRED HINTS "path")
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。