Krótka odpowiedź: można pobrać gałąź master RVM (nie jest stabilna), aby zbudować ją z LLVM (nie gcc, początkowo błędnie wpisano). Ma odpowiednie łatki do uruchomienia 1.9.3-p125 (przynajmniej lepszego) z Xcode 4.3.1 domyślnie. Dostarczyłem łatkę. Jeśli zainstalowałeś już RVM, rvm get head
zainstaluje główny oddział. Dzięki narzędziom wiersza poleceń zainstalowanym z Xcode 4.3.1, możesz z powodzeniem zainstalować Ruby 1.9.3-p125.
Tło
To zdarzyć z powodu prostej kwestii konfiguracji Ruby 1.9.3-P125, że nie pozwalają na dynamiczne moduły Link do pracy. Dzieje się tak, jeśli używasz Xcode 4.3.x (Ruby Issue#6080).
Ten numer usunięto w change set r34840.
RVM ma system łatek, który zapewnia wersję per-version. Ta poprawka jest zawarta w RVM (gałąź master na razie), a teraz domyślna dla kroków konfiguracji p125.
Xcode 4.3.x Command Line Narzędzie
Po pierwsze, z Xcode 4.3.x, trzeba zainstalować narzędzie wiersza poleceń Po zainstalowaniu Xcode 4.3.x, o następujących kierunkach: 1) Wodowanie Xcode, 2) Otwórz "Preferencje" z elementu "Xcode" na pasku menu. 3) Wybierz zakładkę "Downloads" (ikona). 4) Kliknij przycisk „Install” przycisk „Narzędzia wiersza komend” (kierunki pożyczonych od mojego przyjaciela miejscu here)
Jeśli Xcode 4.3.1 jest zainstalowany poprawnie, a następnie cc --version
powinny emitował:
% cc --version
Apple clang version 3.1 (tags/Apple/clang-318.0.54) (based on LLVM 3.1svn)
Target: x86_64-apple-darwin11.3.0
Thread model: posix
autoconf i automake
Potrzebujesz autoconf i automake, ponieważ Xcode 4.3.x ich nie ma. Zainstalować je zarówno brew
lub MacPorts.
Z MacPorts
:
sudo port install autoconf automake
Zalecany krok instalacja z RVM
Następnie, aby zainstalować konkretną gałąź RVM można:
REPO=wayneeseguin
BRANCH=master # stable for the stable branch
curl -s https://raw.github.com/${REPO}/rvm/${BRANCH}/binscripts/rvm-installer > /tmp/rvm-installer.sh
bash /tmp/rvm-installer.sh --branch ${REPO}/${BRANCH}
Lub jeśli RVM jest już zainstalowane:
rvm get head # master branch, for stable branch "rvm get stable"
Następnie zainstaluj openssl, iconv i readline za pomocą polecenia rvm pkg, aby uzyskać najlepszy wynik. Obserwuję ostatnio. Część tego może wymagać włączenia do RVM ..
rvm pkg install openssl
rvm pkg install readline # if you prefer GNU readline
Następnie, nareszcie, zainstaluj Ruby.
rvm install 1.9.3-p125 --patch xcode-debugopt-fix-r34840.diff --with-readline-dir=$rvm_path/usr --with-openssl-dir=$rvm_path/usr --with-tcl-lib=/usr --with-tk-lib=/usr
Pomoc rvm pkg polecam inny parametr, pomoc jest zepsuta. Więc użyj powyżej na teraz. Musisz mieć parametry tcl/tk, jeśli masz je przez MacPorts (jak ja).
Przy okazji, możliwe jest zainstalowanie starego Xcode, a następnie uruchomienie rvm z export CC="gcc-4.2" rvm install 1.9.3-p125
, ale ja osobiście uważam, że klang (LLVM) jest drogą do wyjścia na przyszłość, jeśli to możliwe.
Mam nadzieję, że to pomoże.
Dodatkowa uwaga na 2012/3/31
iconv nie trzeba instalować, również dodane wymagania autoconf/automake dla wyjaśnienia.
Dodatkowa uwaga na 2012/4/13
najnowszej stabilnej nie obejmuje poprawki wymagają dynamicznego link działa domyślnie. należy dodać --patch xcode-debugopt-fix-r34840.diff
podczas budowania wersji 1.9.3-p125.
Najnowsza wersja Ruby obsługuje LLVM. Przynajmniej na moim Macu. –
Tak, ale próbuję zainstalować nową wersję z rvm. – xivo
Niestety, najnowsze LLVM nie działają dobrze z Ruby. Mam zamiar napisać odpowiedź na to .. – shigeya