如何用vcpkg和cmake安装后生成c++GRPC文件?
我通过
vcpkg install grpc
安装GRPC并将其添加到cmake文件。
现在我想生成GRPC c++文件,我运行:
protoc --cpp_out=grpc_file/ --grpc_out=grpc_file/ --proto_path=grpc_proto/ ./grpc_proto/side_information.proto
返回错误:
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,我应该怎么做?
我的工作区是:
.
├── CMakeLists.txt
├── Readme.md
├── build
├── build_envs.sh
├── grpc_file
├── grpc_proto
├── main.cpp
├── twitter.json
└── vcpkg
解决方案
您的CMakeLists.txt是否如下所示?
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插件(以及grpc_cpp_plugin)。
相关文章