Spis treściKliknij link, aby przejść do wybranego miejsca
Ta treść została automatycznie przetłumaczona z ukraińskiego.
Podczas instalacji Ruby 3.4.3 przez RVM na macOS (ARM / Apple Silicon) można napotkać błąd:
rvm install "ruby-3.4.3"ruby-3.4.3 - #usuwanie src/ruby-3.4.3 - proszę czekaćWyszukiwanie binarnych wersji Rubiego, to może zająć trochę czasu.Brak dostępnych binarnych wersji Rubiego dla: osx/26.2/arm64/ruby-3.4.3.Kontynuowanie kompilacji. Proszę przeczytać 'rvm help mount', aby uzyskać więcej informacji o binarnych wersjach Rubiego.Sprawdzanie wymagań dla osx.Instalowanie wymagań dla osx.Aktualizacja systemu - proszę czekaćInstalowanie wymaganych pakietów: pkg-config - proszę czekaćPakiet certyfikatów '/opt/homebrew/etc/[email protected]/cert.pem' jest już aktualny.Instalacja wymagań zakończona sukcesem.Instalowanie Rubiego z źródła do: /Users/username/.rvm/rubies/ruby-3.4.3, to może zająć chwilę w zależności od twojego cpu(s)...ruby-3.4.3 - #pobieranie ruby-3.4.3, to może zająć chwilę w zależności od twojego połączenia...ruby-3.4.3 - #rozpakowywanie ruby-3.4.3 do /Users/username/.rvm/src/ruby-3.4.3 - proszę czekaćruby-3.4.3 - #konfigurowanie - proszę czekaćruby-3.4.3 - #po-konfiguracji - proszę czekaćruby-3.4.3 - #kompilowanie - proszę czekać Błąd podczas uruchamiania '__rvm_make -j10',proszę przeczytać /Users/username/.rvm/log/1767089315_ruby-3.4.3/make.log Wystąpił błąd podczas uruchamiania make. Zatrzymywanie instalacji.
Logi z make będą wyglądać tak:
+__rvm_make:0> make -j10file2lastrev.rb: nie wydaje się być pod vcs: . BASERUBY = /Users/username/.rvm/rubies/ruby-3.4.4/bin/ruby --disable=gems CC = gcc LD = ld LDSHARED = gcc -dynamiclib CFLAGS = -O3 -I/opt/homebrew/opt/libyaml/include -I/opt/homebrew/opt/libksba/include -I/opt/homebrew/opt/readli$ XCFLAGS = -fno-strict-overflow -fvisibility=hidden -fexcess-precision=standard -DRUBY_EXPORT -I. -I.ext/include$ CPPFLAGS = -I/opt/homebrew/opt/node@22/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D$ DLDFLAGS = -L/opt/homebrew/opt/libyaml/lib -L/opt/homebrew/opt/libksba/lib -L/opt/homebrew/opt/readline/lib -L/$ SOLIBS = -ldl -lobjc -lpthread LANG = C.UTF-8 LC_ALL = LC_CTYPE = UTF-8 MFLAGS = - --jobserver-fds=3,4 -j RUSTC = no YJIT_RUSTC_ARGS = --crate-name=yjit --crate-type=staticlib --edition=2021 -g -C lto=thin -C opt-level=3 -C over$Apple clang version 17.0.0 (clang-1700.6.3.2)Target: arm64-apple-darwin25.2.0Model wątków: posixZainstalowany katalog: /Library/Developer/CommandLineTools/usr/binkompilowanie ./main.ckompilowanie dmydln.ckompilowanie miniinit.ctłumaczenie probes probes.d
RVM nie znajduje gotowej binarnej wersji dla tej wersji systemu operacyjnego i próbuje skompilować Ruby ze źródła, ale kompilacja kończy się niepowodzeniem.
Przyczyna
Ruby 3.4.x wymaga OpenSSL 3, ale domyślnie RVM:
- albo pobiera OpenSSL 1.1
- albo w ogóle nie przekazuje ścieżki do OpenSSL
Z tego powodu make kończy się błędem.
Rozwiązanie
Trzeba jawnie wskazać ścieżkę do OpenSSL 3, zainstalowanego przez Homebrew.
Upewnij się, że OpenSSL 3 jest zainstalowany:
brew install openssl@3
Zainstaluj Ruby z jawnym parametrem:
rvm install ruby-3.4.3 --with-openssl-dir=$(brew --prefix)/opt/openssl@3
Po tym Ruby pomyślnie:
- skomplikuje się
- zainstaluje
- utworzy gemsety
- będzie dostępny do użycia
Warto wiedzieć
- Komunikat No binary rubies available - nie jest błędem, a jedynie oznacza, że RVM przeszedł w tryb kompilacji ze źródła
- Ruby 3.4.x na macOS ARM obecnie często wymaga ręcznej konfiguracji
- Podobny problem może wystąpić również z innymi menedżerami wersji
Jeśli Ruby 3.4.x nie instaluje się przez RVM na macOS - prawie zawsze pomaga jawne połączenie openssl@3.
Ten post nie ma jeszcze żadnych dodatków od autora.