Closed14
rbenvでruby2.5.8をinstallする際にBUILD FAILEDが起きる
rbenvでruby2.5.8をインストールした際にBUILD FAILD
が起きた.
% rbenv install 2.5.8
Downloading openssl-1.1.1k.tar.gz...
-> https://dqw8nmjcqpjn7.cloudfront.net/892a0875b9872acd04a9fde79b1f943075d5ea162415de3047c327df33fbaee5
Installing openssl-1.1.1k...
BUILD FAILED (macOS 11.2.3 using ruby-build 20210804)
Inspect or clean up the working tree at /var/folders/gt/sqqp1dc90vd55f2_hzlgqlkr0000gn/T/ruby-build.20210901183956.7884.oen8q2
Results logged to /var/folders/gt/sqqp1dc90vd55f2_hzlgqlkr0000gn/T/ruby-build.20210901183956.7884.log
Last 10 log lines:
_bio_s_mempacket_test in ssltestlib.o
_bio_s_always_retry in ssltestlib.o
_create_ssl_ctx_pair in ssltestlib.o
"_test_ulong_eq", referenced from:
_create_ssl_connection in ssltestlib.o
ld: symbol(s) not found for architecture x86_64
make[1]: *** [test/asn1_encode_test] Error 1
clang-12: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [test/asynciotest] Error 1
make: *** [all] Error 2
enviroment
- MacBook Pro (13-inch, 2019, Four Thunderbolt 3 ports)
- Processer 2.4 GHz Quad-Core Intel Core i5
- macOS Big Sur Version 11.2.3
- rbenv version 1.1.2-61-g585ed84
BUILD FAILD
% RUBY_CONFIGRUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix openssl@1.1) --with-readline-dir=$(brew --prefix readline)" rbenv install 2.5.8
Downloading ruby-2.5.8.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.8.tar.bz2
error: failed to download ruby-2.5.8.tar.bz2
BUILD FAILED (macOS 11.2.3 using ruby-build 20210804)
をもとにrbx-2.5.8をinstallしてみたが,だめだった
% rbenv install rbx-2.5.8
ERROR: Rubinius will not be able to compile using Apple's LLVM-based
build tools on OS X. You will need to install LLVM 3.5 first.
TO FIX THE PROBLEM: Install Homebrew's llvm package with this
command: brew install llvm@3.5
BUILD FAILED (macOS 11.2.3 using ruby-build 20210804)
LLVMのversionがだめだと言われたのが気になる.
clang のversionを確認.brewのclangが入っている.
https://formulae.brew.sh/formula/llvm をみると,安定板っぽい
versionは問題なさそう
% clang -v
Homebrew clang version 12.0.1
Target: x86_64-apple-darwin20.3.0
Thread model: posix
InstalledDir: /usr/local/opt/llvm/bin
ここら辺参考になりそう.sdkが対応してないのかな
そういえばこの前osを再インストールしてxcodeインストールしてない気がする.
と思ったけどしてたっぽい.
% xcode-select --install
xcode-select: error: command line tools are already installed, use "Software Update" to install updates
既にHomebrewが入ってるのでそりゃそうか
mac OS SDKはちゃんと入っている模様
% xcrun --sdk macosx --show-sdk-path
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
ld: symbol(s) not found for architecture x86_64
が気になる.リンカがうまくヘッダーファイルを繋げられていないという認識.
コンパイラに対して何かしらフラグをつけて実行しないといけない?
binutilsの依存packageが悪さをしている説
最近installした気がする...
binutilsをuninstall
% which ar; which ranlib
/usr/local/opt/binutils/bin/ar
/usr/local/opt/binutils/bin/ranlib
% brew uninstall binutils
Uninstalling /usr/local/Cellar/binutils/2.37... (82 files, 158.8MB)
% which ar; which ranlib
/usr/bin/ar
/usr/bin/ranlib
rbenv install
したら入った❗️❗️❗️❗️
% rbenv install 2.5.8
Downloading openssl-1.1.1k.tar.gz...
-> https://dqw8nmjcqpjn7.cloudfront.net/892a0875b9872acd04a9fde79b1f943075d5ea162415de3047c327df33fbaee5
Installing openssl-1.1.1k...
Installed openssl-1.1.1k to /Users/kanekou/.anyenv/envs/rbenv/versions/2.5.8
Downloading ruby-2.5.8.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.8.tar.bz2
Installing ruby-2.5.8...
WARNING: ruby-2.5.8 is past its end of life and is now unsupported.
It no longer receives bug fixes or critical security updates.
ruby-build: using readline from homebrew
Installed ruby-2.5.8 to /Users/kanekou/.anyenv/envs/rbenv/versions/2.5.8
% ruby --version
ruby 2.5.8p224 (2020-03-31 revision 67882) [x86_64-darwin20]
macでbinutils
をインストールするとar
とranlib
のpathが書き換えられ,リンク時にエラーを吐くことが判明した.勉強になった.
解決したのでclose
このスクラップは2021/09/01にクローズされました