Skip to content

Wrong executable published to rubygems for arm64-darwin on > v3.20 #9804

@DerekStride

Description

@DerekStride

What version of protobuf and what language are you using?
Version: > v3.20
Language: Ruby

What operating system (Linux, Windows, ...) and version?

MacOS 12.3.1

What runtime / compiler are you using (e.g., python version or gcc version)

arm64

What did you do?

Steps to reproduce the behavior:

Download either one of the following gems from arm64-darwin:

3.20.1.rc.1 - April 06, 2022 arm64-darwin (274 KB)
3.20.0 - April 01, 2022 arm64-darwin (274 KB)

See all here: https://rubygems.org/gems/google-protobuf/versions

Check the Mach-O Header and it's for x86 architecture (small script to parse the headers: gist://derekstride/mach-o.rb)

What did you expect to see

An executable from arm64 architecture.

What did you see instead?

An executable from x86 architecture.

Error from stacktrace:

Caused by:
LoadError: dlopen(~/.gem/ruby/3.1.0/gems/google-protobuf-3.20.0-arm64-darwin/lib/google/3.1/protobuf_c.bundle, 0x0009): tried: '~/.gem/ruby/3.1.0/gems/google-protobuf-3.20.0-arm64-darwin/lib/google/3.1/protobuf_c.bundle' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e')) - ~/.gem/ruby/3.1.0/gems/google-protobuf-3.20.0-arm64-darwin/lib/google/3.1/protobuf_c.bundle

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions