Mac に React Native をインストールできない
概要
編集: 私の当初のタスクは、React Native をコンピューター上で動作させることでした。ただし、そうすることでいくつかの問題に遭遇しました。問題の原因は私の Ruby バージョンにあることを突き止めましたが、更新されません。
走るとき
gem install bundler
次のことがわかります
bundler requires Ruby version >= 3.0.0. The current ruby version is 2.7.1.83.
それで私は試してみました
rvm install ruby-3.1.1
それは私に与えます
Error running '__rvm_make -j8',
please read /Users/bekkiantonelli/.rvm/log/1714491493_ruby-3.1.1/make.log
There has been an error while running make. Halting the installation.
したがって、本質的に私の問題は、正しいバージョンの Ruby の取得がブロックされていることです。
以下は私の元の投稿です。
これらの指示に従ってみました: https://reactnative.dev/docs/environment-setup Sonoma 14.4.1 と M1 チップ、XCode バージョン 15.2、Ruby バージョン 2.7.1 を搭載した Mac を実行しています。
このステップに到達すると Bundle install では Bundler をインストールします 次のエラーが表示されます。
21: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/bin/ruby_executable_hooks:22:in `<main>'
20: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/bin/ruby_executable_hooks:22:in `eval'
19: from /Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/bin/bundle:23:in `<main>'
18: from /Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/bin/bundle:23:in `load'
17: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/gems/bundler-2.2.19/exe/bundle:37:in `<top (required)>'
16: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/gems/bundler-2.2.19/lib/bundler/friendly_errors.rb:130:in `with_friendly_errors'
15: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/gems/bundler-2.2.19/exe/bundle:49:in `block in <top (required)>'
14: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/gems/bundler-2.2.19/lib/bundler/cli.rb:24:in `start'
13: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/gems/bundler-2.2.19/lib/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
12: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/gems/bundler-2.2.19/lib/bundler/cli.rb:30:in `dispatch'
11: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/gems/bundler-2.2.19/lib/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
10: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/gems/bundler-2.2.19/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
9: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/gems/bundler-2.2.19/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
8: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/gems/bundler-2.2.19/lib/bundler/cli.rb:258:in `install'
7: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/gems/bundler-2.2.19/lib/bundler/settings.rb:133:in `temporary'
6: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/gems/bundler-2.2.19/lib/bundler/cli.rb:259:in `block in install'
5: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/gems/bundler-2.2.19/lib/bundler/cli/install.rb:52:in `run'
4: from /Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require'
3: from /Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require'
2: from /Users/bekkiantonelli/.rvm/gems/ruby-2.7.1/gems/bundler-2.2.19/lib/bundler/fetcher.rb:6:in `<top (required)>'
1: from /Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require'
/Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require': dlopen(/Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/-darwin22/zlib.bundle, 0x0009): Library not loaded: /opt/homebrew/opt/zlib/lib/libz.1.dylib (LoadError)
Referenced from: <878913C8-6316-3212-A8AD-F9DD9EA034F5> /Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/-darwin22/zlib.bundle
Reason: tried: '/opt/homebrew/opt/zlib/lib/libz.1.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/opt/zlib/lib/libz.1.dylib' (no such file), '/opt/homebrew/opt/zlib/lib/libz.1.dylib' (no such file) - /Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/-darwin22/zlib.bundle
私が試すときにも注目に値します
バンドル実行ポッドインストールすると次の結果が得られます
Could not find gem 'cocoapods (>= 1.13, < 1.15)' in rubygems repository https://rubygems.org/ or installed locally.
The source does not contain any versions of 'cocoapods'
Run `bundle install` to install missing gems.
homebrewを再インストールしてみました。
私も試してみました
gem update --system
それは与える
Error loading RubyGems plugin "/Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/gems/2.7.0/gems/executable-hooks-1.7.1/lib/rubygems_plugin.rb": dlopen(/Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/-darwin22/openssl.bundle, 0x0009): Library not loaded: /opt/homebrew/opt/[email protected]/lib/libssl.1.1.dylib
Referenced from: <F1F803B3-9EF7-3EDD-A626-FE9DC2ABDBA4> /Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/-darwin22/openssl.bundle
Reason: tried: '/opt/homebrew/opt/[email protected]/lib/libssl.1.1.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/opt/[email protected]/lib/libssl.1.1.dylib' (no such file), '/opt/homebrew/opt/[email protected]/lib/libssl.1.1.dylib' (no such file) - /Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/-darwin22/openssl.bundle (LoadError)
Error loading RubyGems plugin "/Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/gems/2.7.0/gems/gem-wrappers-1.4.0/lib/rubygems_plugin.rb": dlopen(/Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/-darwin22/openssl.bundle, 0x0009): Library not loaded: /opt/homebrew/opt/[email protected]/lib/libssl.1.1.dylib
Referenced from: <F1F803B3-9EF7-3EDD-A626-FE9DC2ABDBA4> /Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/-darwin22/openssl.bundle
Reason: tried: '/opt/homebrew/opt/[email protected]/lib/libssl.1.1.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/opt/[email protected]/lib/libssl.1.1.dylib' (no such file), '/opt/homebrew/opt/[email protected]/lib/libssl.1.1.dylib' (no such file) - /Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/-darwin22/openssl.bundle (LoadError)
ERROR: Loading command: update (LoadError)
dlopen(/Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/-darwin22/openssl.bundle, 0x0009): Library not loaded: /opt/homebrew/opt/[email protected]/lib/libssl.1.1.dylib
Referenced from: <F1F803B3-9EF7-3EDD-A626-FE9DC2ABDBA4> /Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/-darwin22/openssl.bundle
Reason: tried: '/opt/homebrew/opt/[email protected]/lib/libssl.1.1.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/opt/[email protected]/lib/libssl.1.1.dylib' (no such file), '/opt/homebrew/opt/[email protected]/lib/libssl.1.1.dylib' (no such file) - /Users/bekkiantonelli/.rvm/rubies/ruby-2.7.1/lib/ruby/2.7.0/-darwin22/openssl.bundle
ERROR: While executing gem ... (NoMethodError)
undefined method `invoke_with_build_args' for nil:NilClass
ロゼッタではなくロゼッタでターミナルを使用してみました
助けていただければ幸いです。
解決策
Ruby アップデート修正のリンクについては @engineersmnky に感謝します。特に次の行を使用しました。
rvm install ruby-3.3.0 --reconfigure --with-openssl-dir=$(brew --prefix openssl@3)
これにより、実際に Ruby を更新できるようになりましたが、これが本当の問題でした。その後、プロジェクトとiosにcdして実行できました
bundle install
bundle exec pod install
そしてそれは正しく実行されました