首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用vcpkg和cmake安装后如何生成c++ grpc文件?

用vcpkg和cmake安装后如何生成c++ grpc文件?
EN

Stack Overflow用户
提问于 2021-03-03 16:33:15
回答 2查看 533关注 0票数 1

我通过vcpkg install grpc安装了grpc,并将其添加到cmake文件中。现在我想生成grpc c++文件,我运行:

代码语言:javascript
运行
复制
protoc --cpp_out=grpc_file/ --grpc_out=grpc_file/  --proto_path=grpc_proto/  ./grpc_proto/side_information.proto

它返回错误:

代码语言:javascript
运行
复制
protoc-gen-grpc: program not found or is not executable
--grpc_out: protoc-gen-grpc: Plugin failed with status code 1.

如何使用vcpkg安装的grpc_cpp_plugin?我的工作空间是:

代码语言:javascript
运行
复制
.
├── CMakeLists.txt
├── Readme.md
├── build
├── build_envs.sh
├── grpc_file
├── grpc_proto
├── main.cpp
├── twitter.json
└── vcpkg
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-03-15 08:42:02

你的CMakeLists.txt是像下面这样的吗?

代码语言:javascript
运行
复制
cmake_minimum_required(VERSION 3.1)

if(DEFINED ENV{VCPKG_ROOT})
    set(CMAKE_TOOLCHAIN_FILE $ENV{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake)
else()
    set(CMAKE_TOOLCHAIN_FILE "/path_to_vcpkg/scripts/buildsystems/vcpkg.cmake")
endif()

project(Foo)

find_package(gRPC CONFIG REQUIRED)

...

add_executable(${PROJECT_NAME} ${Bar})

target_link_libraries(${PROJECT_NAME} PRIVATE gRPC::gpr gRPC::grpc gRPC::grpc++ gRPC::grpc_cronet)

在文件夹path_to_vcpkg/packages/grpc_x64-PLATFORM/tools/grpc中,您可以找到适用于您的平台(也包括grpc_cpp_plugin)的所有预编译的grpc插件。

票数 1
EN

Stack Overflow用户

发布于 2021-03-12 06:11:22

protoc正在尝试从您的PATH中查找protoc-gen-grpc插件,但无法找到,因此出现错误。修复方法是简单地指定到所述插件的路径。假设您使用的是vcpkg,那么该路径可能是这样的:

代码语言:javascript
运行
复制
protoc --cpp_out=grpc_file/ --grpc_out=grpc_file/ --proto_path=grpc_proto/ \
--plugin=protoc-gen-grpc="<vcpkg_install_path>\packages\grpc_x64-windows\tools\grpc\grpc_cpp_plugin.exe" \ 
./grpc_proto/side_information.proto 

如果你希望在你的grpc项目中使用Visual Studio,我建议你看看this guide,它可以生成一个VS解决方案。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66453355

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档