Короткий ответ: вы можете получить основную ветку RVM (не стабильную), чтобы построить ее с помощью LLVM (не gcc, я сначала набрал опечатку).У этого есть соответствующие исправления, чтобы заставить 1.9.3-p125 работать (по крайней мере лучше) с Xcode 4.3.1 по умолчанию.Я предоставил патч.Если вы уже установили RVM, rvm get head
установит основную ветку.С инструментами командной строки, установленными с Xcode 4.3.1, вы можете успешно установить Ruby 1.9.3-p125.
Фон
Это происходит из-за простой проблемы конфигурацииRuby 1.9.3-p125, он не позволяет работать модулям динамической компоновки.Это происходит, если вы используете Xcode 4.3.x ( Ruby Issue # 6080 ).
Эта проблема исправлена в наборе изменений r34840 .
RVM имеет патч-систему, которая обеспечивает каждую версию.Этот патч включен в RVM (пока что основная ветвь) и теперь используется по умолчанию для шагов конфигурации p125.
Инструмент командной строки Xcode 4.3.x
Первый, с Xcode4.3.x, вам необходимо установить инструмент командной строки ПОСЛЕ установки Xcode 4.3.x, выполнив следующие действия: 1) Запуск Xcode, 2) Откройте «Preferences» из пункта «Xcode» в строке меню.3) Выберите вкладку «Загрузки» (значок).4) Нажмите кнопку «Установить» для «Инструментов командной строки» (указания, позаимствованные с сайта моего друга здесь )
Если Xcode 4.3.1 установлен правильно, то cc --version
должно выдать:
% 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 и automake
Вам нужны autoconf и automake, поскольку в Xcode 4.3.x их нет.Установите их либо brew
или MacPorts.
с MacPorts
:
sudo port install autoconf automake
Рекомендуемый шаг установки с RVM
Затем, чтобы установить конкретную ветку RVM,Вы можете:
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}
Или, если RVM уже установлен:
rvm get head # master branch, for stable branch "rvm get stable"
После этого установить openssl, iconv и readline с помощью команды rvm pkg для достижения наилучшего результата.Я делаю следующее в последнее время.Часть этого может потребоваться включить в RVM ..
rvm pkg install openssl
rvm pkg install readline # if you prefer GNU readline
Затем, наконец, установите 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
Справка rvm pkg рекомендует другой параметр, справка не работает.Так что используйте выше на данный момент.Вам нужны параметры tcl / tk, если они есть через MacPorts (как я)
Кстати, возможно установить старый Xcode и запустить rvm с export CC="gcc-4.2" rvm install 1.9.3-p125
, но я лично считаю, что clang (LLVM)путь в будущее, если это возможно.
Надеюсь, что это поможет.
Дополнительные примечания по 2012/3/31
iconv ненеобходимо установить, также добавлены требования autoconf / automake для разъяснений.
Дополнительные примечания по 2012/4/13
Последний стабильный выпуск не включает исправление, требующее динамической ссылки наработать по умолчанию.вам нужно добавить --patch xcode-debugopt-fix-r34840.diff
при сборке 1.9.3-p125.