Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compile grpc-node binaries for ARM from source code #1737

Closed
sri-vathsa opened this issue Apr 5, 2021 · 5 comments
Closed

Compile grpc-node binaries for ARM from source code #1737

sri-vathsa opened this issue Apr 5, 2021 · 5 comments

Comments

@sri-vathsa
Copy link

Is your feature request related to a problem? Please describe.

I am using AWS graviton instances to host my application(node) and am facing an error during the installation of grpc saying the binary files are not found. How do I compile grpc-node binaries for ARM from source code?

Describe the solution you'd like

Instructions to compile the binaries from source code.

Additional context

With the increasing popularity of Apple silicon and the ARM based compute on AWS I feel this should be provided out of the box.

@murgatroid99
Copy link
Member

What error message are you getting, exactly? We distribute precompiled binaries for arm and arm64 targets, so I need to see what specifically it is looking for.

@sri-vathsa
Copy link
Author

 info using node@15.11.0 | linux | arm64
 WARN Using request for node-pre-gyp https download
 info check checked for "/tmp/build/components-content-service-api-typescript--lib.6e5add716bcd41f9fc699a8db49a0499aff4e0f3/node_modules/grpc-tools/bin/grpc_tools.node" (not found)
 http GET https://node-precompiled-binaries.grpc.io/grpc-tools/v1.10.0/linux-arm64.tar.gz
 http 404 https://node-precompiled-binaries.grpc.io/grpc-tools/v1.10.0/linux-arm64.tar.gz
 ERR! install error
 ERR! stack Error: 404 status code downloading tarball https://node-precompiled-binaries.grpc.io/grpc-tools/v1.10.0/linux-arm64.tar.gz
 ERR! stack     at Request.<anonymous> (/tmp/build/components-content-service-api-typescript--lib.6e5add716bcd41f9fc699a8db49a0499aff4e0f3/node_modules/node-pre-gyp/lib/install.js:142:27)
 ERR! stack     at Request.emit (node:events:390:22)
 ERR! stack     at Request.onRequestResponse (/tmp/build/components-content-service-api-typescript--lib.6e5add716bcd41f9fc699a8db49a0499aff4e0f3/node_modules/request/request.js:1059:10)
 ERR! stack     at ClientRequest.emit (node:events:378:20)
 ERR! stack     at HTTPParser.parserOnIncomingClient [as onIncoming] (node:_http_client:636:27)
 ERR! stack     at HTTPParser.parserOnHeadersComplete (node:_http_common:129:17)
 ERR! stack     at TLSSocket.socketOnData (node:_http_client:502:22)
 ERR! stack     at TLSSocket.emit (node:events:378:20)
 ERR! stack     at addChunk (node:internal/streams/readable:313:12)
 ERR! stack     at readableAddChunk (node:internal/streams/readable:288:9)
 ERR! System Linux 5.4.0-1038-aws
 ERR! command "/usr/bin/node" "/tmp/build/components-content-service-api-typescript--lib.6e5add716bcd41f9fc699a8db49a0499aff4e0f3/node_modules/grpc-tools/node_modules/.bin/node-pre-gyp" "install"
 ERR! cwd /tmp/build/components-content-service-api-typescript--lib.6e5add716bcd41f9fc699a8db49a0499aff4e0f3/node_modules/grpc-tools
 ERR! node -v v15.11.0
 ERR! node-pre-gyp -v v0.15.0
 ERR! not ok
 404 status code downloading tarball https://node-precompiled-binaries.grpc.io/grpc-tools/v1.10.0/linux-arm64.tar.gz
 info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

@murgatroid99
Copy link
Member

We do not distribute ARM binaries for the grpc-tools package. See #1405 for more information.

@sri-vathsa
Copy link
Author

Can you provide instructions to generate the binaries from the source code?

@murgatroid99
Copy link
Member

I suggest using our build script as a reference: https://github.com/grpc/grpc-node/blob/master/packages/grpc-tools/build_binaries.sh. It has some code that is specific to the architectures we build for so that part will need to be modified to support ARM.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants