gRPC 安装在 "make" 失败
gRPC installation fails at "make"
我正在按照 Built From Source instructions 安装 grpc
$ git clone -b $(curl -L https://grpc.io/release) https://github.com/grpc/grpc
成功
$ cd grpc
成功
$ git submodule update --init
成功
$ make
构建几个源文件后失败
third_party/boringssl/crypto/rand/urandom.c:62:2: error: #error "system call number for getrandom is not the expected value"
#error "system call number for getrandom is not the expected value"
^
In file included from /usr/include/x86_64-linux-gnu/sys/syscall.h:31:0,
from third_party/boringssl/crypto/rand/urandom.c:32:
third_party/boringssl/crypto/rand/urandom.c: In function ‘init_once’:
third_party/boringssl/crypto/rand/urandom.c:128:15: error: ‘__NR_getrandom’ undeclared (first use in this function)
syscall(SYS_getrandom, &dummy, sizeof(dummy), GRND_NONBLOCK);
^
third_party/boringssl/crypto/rand/urandom.c:128:15: note: each undeclared identifier is reported only once for each function it appears in
third_party/boringssl/crypto/rand/urandom.c: In function ‘fill_with_entropy’:
third_party/boringssl/crypto/rand/urandom.c:258:21: error: ‘__NR_getrandom’ undeclared (first use in this function)
r = syscall(SYS_getrandom, out, len, 0 /* no flags */);
^
Makefile:2564: recipe for target '/home/usrnm/grpc/objs/opt/third_party/boringssl/crypto/rand/urandom.o' failed
make: *** [/home/usrnm/grpc/objs/opt/third_party/boringssl/crypto/rand/urandom.o] Error 1
OS: Linux 4.4.0-0 SMP Debian 4.4.16-1
GCC 版本:gcc (Debian 4.9.2-10) 4.9.2
我在 Internet 上找不到任何未解决的问题或关于此错误的任何帮助。
这个问题似乎是在编译 boringssl 时发生的。我们使用 $ git submodule
给出的版本,在撰写本文时为 be2ee342d3781ddb954f91f8a7e660c6f59e87e5 third_party/boringssl (version_for_cocoapods_7.0-526-gbe2ee342)
。你能自己编译 boringssl 吗?
如果没有嵌入式 BoringSSL,您可能会更幸运。尝试构建:
EMBED_OPENSSL=false make
如果您收到有关缺少软件包的错误消息,请确保您已安装 libssl-dev
。
我正在按照 Built From Source instructions 安装 grpc
$ git clone -b $(curl -L https://grpc.io/release) https://github.com/grpc/grpc
成功
$ cd grpc
成功
$ git submodule update --init
成功
$ make
构建几个源文件后失败
third_party/boringssl/crypto/rand/urandom.c:62:2: error: #error "system call number for getrandom is not the expected value"
#error "system call number for getrandom is not the expected value"
^
In file included from /usr/include/x86_64-linux-gnu/sys/syscall.h:31:0,
from third_party/boringssl/crypto/rand/urandom.c:32:
third_party/boringssl/crypto/rand/urandom.c: In function ‘init_once’:
third_party/boringssl/crypto/rand/urandom.c:128:15: error: ‘__NR_getrandom’ undeclared (first use in this function)
syscall(SYS_getrandom, &dummy, sizeof(dummy), GRND_NONBLOCK);
^
third_party/boringssl/crypto/rand/urandom.c:128:15: note: each undeclared identifier is reported only once for each function it appears in
third_party/boringssl/crypto/rand/urandom.c: In function ‘fill_with_entropy’:
third_party/boringssl/crypto/rand/urandom.c:258:21: error: ‘__NR_getrandom’ undeclared (first use in this function)
r = syscall(SYS_getrandom, out, len, 0 /* no flags */);
^
Makefile:2564: recipe for target '/home/usrnm/grpc/objs/opt/third_party/boringssl/crypto/rand/urandom.o' failed
make: *** [/home/usrnm/grpc/objs/opt/third_party/boringssl/crypto/rand/urandom.o] Error 1
OS: Linux 4.4.0-0 SMP Debian 4.4.16-1
GCC 版本:gcc (Debian 4.9.2-10) 4.9.2
我在 Internet 上找不到任何未解决的问题或关于此错误的任何帮助。
这个问题似乎是在编译 boringssl 时发生的。我们使用 $ git submodule
给出的版本,在撰写本文时为 be2ee342d3781ddb954f91f8a7e660c6f59e87e5 third_party/boringssl (version_for_cocoapods_7.0-526-gbe2ee342)
。你能自己编译 boringssl 吗?
如果没有嵌入式 BoringSSL,您可能会更幸运。尝试构建:
EMBED_OPENSSL=false make
如果您收到有关缺少软件包的错误消息,请确保您已安装 libssl-dev
。