使用VS2017构建用于Linux的Protobuf

Building protobuf for Linux using VS2017

本文关键字:Protobuf Linux 用于 VS2017 构建 使用      更新时间:2023-10-16

我已经配置了VS2017,以通过Linux Mint VM上的远程构建来构建Linux C 。我尝试了一个简单的C 程序,它编译和执行正常,问题是我需要添加生成的Protobuf源,并且链接不断失败。

在Linux VM上,Protobuf生成的文件正正确构建,我能够执行GRPC示例。

我从VS2017构建时遇到的错误是很多:

'google :: protobuf ::内部'

的未定义引用

还有这个

c: program Files(x86( Microsoft Visual Studio 2017 community common7 common7 iDe vc vctargets application type linux linux 1.0 linux.targets.targets.targets(262,5(路径中的字符。

我认为这是VS2017远程编译配置问题,但我不知道会是什么。

它发生在您身上吗?你知道如何解决这个问题吗?

谢谢

解决方案: i项目属性转到 linker> linker> librage依赖项 并添加: protobuf; pthread; grpc ; grpc; grpc <</em>

这解释了"路径中的非法字符"消息。

protobuf是否链接到Linux系统上的任何库?假设您不使用cmake,您是否将库和图路径添加到Visual Studio Project -Library DependenciesAdditional Library Directories中。这可能有助于指定库。