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

grpc-tools binaries broken for darwin-arm64 (macos m1) #2378

Open
yurks opened this issue Mar 1, 2023 · 0 comments
Open

grpc-tools binaries broken for darwin-arm64 (macos m1) #2378

yurks opened this issue Mar 1, 2023 · 0 comments

Comments

@yurks
Copy link

yurks commented Mar 1, 2023

Problem description

Binaries for darwin-arm64 arch are failed to run as it actually duplicates x64 arch files.

Reproduction steps

Installing grpc-tools with yarn add grpc-tools on mac m1 system downloads darwin-arm64.tar.gz prebuilt package with binaries for x64 arch.

Environment

  • MacOS 13.2.1 arm64 (Darwin Kernel Version 22.3.0 arm64)
  • 16.19.1
  • nvm
  • 1.12.4, 1.11.3

Additional context

Bellow are "differences" for two binaries from archives

https://node-precompiled-binaries.grpc.io/grpc-tools/v1.11.3/darwin-arm64.tar.gz
https://node-precompiled-binaries.grpc.io/grpc-tools/v1.11.3/darwin-x64.tar.gz

$ file arm64/protoc x86_64/protoc
arm64/protoc:  Mach-O universal binary with 1 architecture: [x86_64:Mach-O 64-bit executable x86_64]
arm64/protoc (for architecture x86_64):    Mach-O 64-bit executable x86_64
x86_64/protoc: Mach-O universal binary with 1 architecture: [x86_64:Mach-O 64-bit executable x86_64]
x86_64/protoc (for architecture x86_64):    Mach-O 64-bit executable x86_64

$ md5 arm64/protoc  x86_64/protoc
MD5 (arm64/protoc)  = bb776957bbe7754fd0cb3345c47f14d2
MD5 (x86_64/protoc) = bb776957bbe7754fd0cb3345c47f14d2

So, actually still no arm64 arch support (checked with v12 as well) and still doesn't work without rosetta on m1 mac.

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

No branches or pull requests

2 participants