Skip to content

Commit

Permalink
Detect Rosetta2 and warn if x86_64 is used on arm64
Browse files Browse the repository at this point in the history
Running `pod install` from inside Rosetta2 can lead to problems, try
to avoid doing that by hinting users from use_react_native!() function.

   $ arch -x86_64 pod install
   Building RNTester with Fabric enabled.
   Building RNTester with Fabric enabled.
   Building RNTester with Fabric enabled.
   Analyzing dependencies
   Downloading dependencies
   Generating Pods project
   Integrating client project
   Pod installation complete! There are 63 dependencies from the Podfile and 50 total pods installed.

   [!] Do not use "pod install" from inside Rosetta2 (x86_64 emulation on arm64).

   [!]  - Emulated x86_64 is slower than native arm64

   [!]  - May result in mixed architectures in rubygems (eg: ffi_c.bundle files may be x86_64 with an arm64 interpreter)

   [!] Run "env /usr/bin/arch -arm64 /bin/bash --login" then try again.
  • Loading branch information
barbieri committed Sep 29, 2021
1 parent efa454b commit 2175216
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions scripts/react_native_pods.rb
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,13 @@ def use_react_native! (options={})
# Include Hermes dependencies
hermes_enabled = options[:hermes_enabled] ||= false

if `/usr/sbin/sysctl -n hw.optional.arm64 2>&1`.to_i == 1 && !RUBY_PLATFORM.start_with?('arm64')
Pod::UI.warn 'Do not use "pod install" from inside Rosetta2 (x86_64 emulation on arm64).'
Pod::UI.warn ' - Emulated x86_64 is slower than native arm64'
Pod::UI.warn ' - May result in mixed architectures in rubygems (eg: ffi_c.bundle files may be x86_64 with an arm64 interpreter)'
Pod::UI.warn 'Run "env /usr/bin/arch -arm64 /bin/bash --login" then try again.'
end

# The Pods which should be included in all projects
pod 'FBLazyVector', :path => "#{prefix}/Libraries/FBLazyVector"
pod 'FBReactNativeSpec', :path => "#{prefix}/React/FBReactNativeSpec"
Expand Down

0 comments on commit 2175216

Please sign in to comment.