【发布时间】:2019-07-13 11:28:15
【问题描述】:
我的项目是用 Rust (Ubuntu 16.04, CMake 3.5.1) 编写的。
以前它使用grpcio = "0.4.0" 作为Cargo.toml 中的依赖项,我可以成功地交叉编译(即创建静态二进制文件)它(使用cross)。但是,在我将依赖项更改为 grpcio = { version = "0.4.2", features = ["openssl"] } 后,我无法再交叉编译它:它说它无法编译 grpcio-sys = "0.4.2" 并显示一些 CMake 错误(我无法继续使用 0.4.0因为它不支持features=["openssl"]):
- 找不到用于
Ubuntu 16.04的 OpenSSL 的一些环境标志(即使我安装了sudo apt-get install libssl-dev)。 -
gRPC_PROTOBUF_PROVIDER is "module" but PROTOBUF_ROOT_DIR is wrong。
我该如何解决? This 帖子说我应该完全避免使用 OpenSSL。这是另一个 post 关于使用 OpenSSL 进行交叉编译的内容。
【问题讨论】:
-
只是添加我的评论,需要对此有更好的解决方案
标签: rust cross-compiling grpc