这里使用protobuf_generate_cpp命令将foo.proto文件生成源码,使用PROTO_SRC,PROTO_HARS变量分别指代生成的cpp和h文件并可用于连接到target和设置include 不过这种方法有两个缺点: 要求protobuf_generate_cpp命令和生成add_executable()或add_library()的命令必须在同一个CMakeList中. 该方法(当前3.18)仍无法设置源码的...
protobuf_generate_cpp execute_process 示例1:定义proto 实例2:proto文件读写 参考资料 简介 Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准,目前已经正在使用的有超过 48,162 种报文格式定义和超过 12,183 个 .proto 文件。他们用于 RPC 系统和持续数据存储系统。 Protocol Buffers...
cmake_minimum_required(VERSION3.5)# Set the project nameproject(protobuf_example)# find the protobuf compiler and librariesfind_package(Protobuf REQUIRED)# check if protobuf was foundif(PROTOBUF_FOUND)message("protobuf found")else()message(FATAL_ERROR"Cannot find Protobuf")endif()# Generate th...
cmake_minimum_required(VERSION 3.9) project(YourProject) # 设置C++标准 set(CMAKE_CXX_STANDARD 11) # 找到Protobuf安装 find_package(Protobuf CONFIG REQUIRED) # Protobuf生成源码 set(PROTO_FILE "${CMAKE_CURRENT_SOURCE_DIR}/proto/message.proto") protobuf_generate_cpp(PROTO_SRCS PROTO_HDRS ${PR...
protobuf_generate_cpp(PROTO_SRCS PROTO_HDRS EXPORT_MACRO DLL_EXPORT foo.proto) protobuf_generate_python(PROTO_PY foo.proto) add_executable(bar bar.cc${PROTO_SRCS}${PROTO_HDRS}) target_link_libraries(bar${Protobuf_LIBRARIES}) 但是这个例子太简单了,如果我们的.proto文件只有一个或者说都只在一个...
PROTO_HDRS- 存储.pb.h文件的变量名称 AddressBook.proto - 从中生成代码的.proto文件 生成文件 在调用PROTOBUF_GENERATE_CPP函数之后,你将拥有上面提到的变量。这些将被标记为自定义命令的输出,该命令将调用Protobuf编译器来生成它们。 要生成这些文件,你应该将它们添加到库或可执行文件中。
在之前的博文中已经简单介绍了onnx,其中onnx.proto就代表了onnx模型的基本数据结构。一般来说,protobuf经常搭配Cmake使用,Cmake有官方的modules,可以通过简单的几个命令protobuf_generate_cpp来生成对应的.pb.cc和.pb.h。 简单的例子: find_package(Protobuf REQUIRED) ...
protobuf_generate_cpp(AddressBook_PROTO_SRCS AddressBook_PROTO_HDRS proto/addressbook.proto) add_executable(protobuf_example_write src/protobuf_example_write.cpp ${AddressBook_PROTO_SRCS} ${AddressBook_PROTO_HDRS}) add_executable(protobuf_example_read src/protobuf_example_read.cpp ${AddressBook_PROTO...
构建如下所示: protobuf_generate_cpp(MYAPP_PROTO_SRCS MYAPP_PROTO_HDRS ${CMAKE_CURRENT_SOURCE_DIR}/myapp.protoadd_executab 浏览5提问于2022-04-29得票数 0 1回答 CMake:安装配置时尚未创建的文件 、、 我确实有一个带有Protobuf接口的项目,需要使用CMake编译和安装Python。} --python_out=${CMAKE_...
- PROTO_HDRS- 存储.pb.h文件的变量名称 - AddressBook.proto - 从中生成代码的.proto文件 ### 3.3 生成文件 在调用`PROTOBUF_GENERATE_CPP`函数之后,你将拥有上面提到的变量。这些将被标记为自定义命令的输出,该命令将调用Protobuf编译器来生成它们。 要生成这些文件,你应该将它们添加到库或可执行文件中。 ...