- MacBook Pro 16" ( Intel Core i9 )
- macOS Ventura 13.4.1 ( Darwin Kernel Version 22.5.0 )
- Homebrew 4.1.3
- Apple clang version 14.0.3 (clang-1403.0.22.14.1)
- rbenv 1.2.0
- ruby-build 20230717
- ruby-install 0.9.0
- llvm 15 && 16
※ MacBook Air 2019 ( Intel Core i5 ) では同様の現象は起きない。同マシンも clang 15 + llvm 17 になったら問題なく動作するようになった。
- chruby + ruby-install で ruby 3.0 以降なら戦える
- ruby-build でも compile までは通せるようになるが、なぜか所定の場所に欲しいファイルが存在せずに install に失敗という問題については原因に思い当たるフシがなく、断念
- 順番的に ruby-build ( llvm 16 ) -> ruby-build ( llvm 15 ) -> ruby-install ( llvm 15 ) で試したため、ruby-install ( llvm 16 ) の試行はナシ
- NG 2.7.x
- NG 3.0.x
- NG 3.1.x
- NG 3.2.x
configure のログを読むと明らかに llvm の辺りで必要なものが足りてなさそうなログが流れるので、試しに llvm 15 を入れて link し直し。configure は option っを与えないとうまく動かない(他の Intel Mac の環境では特に与えなくても動作する)。Homebrew 版も git clone 版も試したが動作に根本的な違いは見られない。なぜか compile できたはずのファイルが意図した場所に存在しないというエラーになる。
- NG 3.1.4
- RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix openssl@3)" rbenv install --verbose -k 3.1.4
ld: can't open output file for writing: ../../../../../.bundle/extensions/x86_64-darwin-22/3.1.0/rbs-2.7.0/rbs_extension.bundle, errno=2
ld: can't open output file for writing: ../../../../../.bundle/extensions/x86_64-darwin-22/3.1.0/debug-1.6.3/debug/debug.bundle, errno=2
clang-15clang-15: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: make[2]: *** [../../../../../.bundle/extensions/x86_64-darwin-22/3.1.0/rbs-2.7.0/rbs_extension.bundle] Error 1
*** [../../../../../.bundle/extensions/x86_64-darwin-22/3.1.0/debug-1.6.3/debug/debug.bundle] Error 1
make[1]: *** [.bundle/gems/debug-1.6.3/ext/debug/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [.bundle/gems/rbs-2.7.0/ext/rbs_extension/all] Error 2
- OK 3.2.2
- RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix openssl@3)" rbenv install --verbose -k 3.2.2
- OK 3.1.4
- ただしsourceの中で手動make; make installした場合。/usr/local に直接installされ、切り替えはできない。
恐らく openssl のパスは全バージョンで明示してあげないとそれが理由で死ぬっぽい
- NG 2.7.8
- checking size of size_t... configure: error: in `~/src/ruby-2.7.8': configure: error: cannot compute sizeof (size_t)
- OK 3.0.6
- ruby-install 3.0.6 -- --enable-shared --with-openssl-dir=$(brew --prefix [email protected])
- OK 3.1.4
- ruby-install 3.1.4 -- --enable-shared --with-openssl-dir=$(brew --prefix openssl@3)
- OK 3.2.2
- ruby-install 3.2.2 -- --enable-shared --with-openssl-dir=$(brew --prefix openssl@3)
rbenv で install した Ruby について、たまたま Ruby が動いても bundler は以下のように死ぬ場合がある
Could not reach host index.rubygems.org. Check your network connection and try again.