RVM не устанавливает Ruby 1.9.2 на Snow Leopard: «Ошибка запуска« make » - PullRequest
11 голосов
/ 15 апреля 2011

Когда я пытаюсь установить Ruby 1.9.2 на Snow Leopard, используя:

rvm install 1.9.2

, я получаю следующее:

ERROR: Error running 'make ', please read /Users/mary/.rvm/log/ruby-1.9.2-p180/make.log
ERROR: There has been an error while running make. Halting the installation.

Итак, я проверяю make.log.В конце написано:

readline.c: In function ‘username_completion_proc_call’:
readline.c:1386: error: ‘username_completion_function’ undeclared (first use in this 
function)

readline.c:1386: error: (Each undeclared identifier is reported only once
readline.c:1386: error: for each function it appears in.)
make[1]: *** [readline.o] Error 1
make: *** [mkmain.sh] Error 1

Я ознакомился с другими ответами на этот вопрос и сделал все, что там предлагалось:

  • XCode установлен.
  • В конец моего .bash_profile добавлена ​​следующая строка:

    [[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
    

Я попытался обновить readline, но, несмотря ни на что, я продолжаю получать сообщение об ошибке оработает 'make.'

Вывод rvm info выглядит следующим образом:

 system:

  system:
    uname:       "Darwin mary-nunans-computer.local 10.6.0 Darwin Kernel Version 10.6.0: Wed Nov 10 18:13:17 PST 2010; root:xnu-1504.9.26~3/RELEASE_I386 i386"
    bash:        "/bin/bash => GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin10.0)"
    zsh:         "/bin/zsh => zsh 4.3.9 (i386-apple-darwin10.0)"

  rvm:
    version:      "rvm 1.6.2 by Wayne E. Seguin (wayneeseguin@gmail.com) [https://rvm.beginrescueend.com/]"

  homes:
    gem:          "not set"
    ruby:         "not set"

  binaries:
    ruby:         "/usr/local/bin/ruby"
    irb:          "/usr/local/bin/irb"
    gem:          "/usr/local/bin/gem"
    rake:         "/usr/local/bin/rake"

  environment:
    PATH:         "/opt/local/bin:/opt/local/sbin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/git/bin:/usr/X11/bin:/Users/mary/.rvm/bin:/Users/mary/.rvm/bin"
    GEM_HOME:     ""
    GEM_PATH:     ""
    MY_RUBY_HOME: ""
    IRBRC:        ""
    RUBYOPT:      ""
    gemset:       ""

Любые предложения приветствуются.

Ответы [ 4 ]

18 голосов
/ 07 мая 2011

Скомпилируйте и установите свой собственный readline:

curl -O ftp://ftp.gnu.org/gnu/readline/readline-6.1.tar.gz
tar xzvf readline-6.1.tar.gz
cd readline-6.1
./configure --prefix=/usr/local
make
sudo make install
cd ..

Удалить рубин: rvm remove 1.9.2

Установите его снова: rvm install 1.9.2

(Вам может понадобиться добавить исходный код, если локальный путь отсутствует в вашем каталоге: rvm install 1.9.1 -C --with-readline-dir=/usr/local/

Это должно сделать это.

------------- РЕДАКТИРОВАТЬ --------------

Как отмечено в комментарии ниже, если вы используете homebrew , то вам следует brew install readline. И если вы используете Mac, вы должны использовать homebrew.

------------ КАК СОСТАВИТЬ READLINE НА 10.7 ---------

"readline-6.2 не была обновлена ​​для Mac OS X 10.7 (darwin11), поэтому откройте support / shobj-conf и измените darwin10 на darwin11 в двух местах, где он появляется."

Источник: Лэмбой

1 голос
/ 09 мая 2011

У меня была та же проблема, и ответ в посте Получение ошибки для libxml2.2.dylib "файл не требуемой архитектуры" ), наконец, помогло мне решить ее.

0 голосов
/ 14 сентября 2011

Я вставляю сюда вывод 'rvm notes', так как это имеет значение напрямую. Вам нужен как минимум Xcode 3.2.1 (1613). Обратите внимание, что Snow Leopard был первым, кто получил эту ревизию, поэтому вам нужно получить обновленный Xcode.

v rvm notes

Примечания для Дарвина (Mac OS X)
Для Snow Leopard убедитесь, что у вас есть Xcode Tools версии 3.2.1 (1613) или новее Вы должны загрузить последние инструменты Xcode с developer.apple.com. (Это потому, что установка dvd для Snow Leopard содержала ошибки).

Если вы намереваетесь установить MacRuby, вы должны сначала установить LLVM. Если вы собираетесь установить JRuby, вы должны установить JDK. Если вы собираетесь установить IronRuby, вы должны установить Mono (рекомендуется версия 2.6 или выше).

Чтобы использовать установленный RVM Ruby по умолчанию вместо системного ruby: rvm install 1.8.7 # устанавливает патч 352: ближайшая поддерживаемая версия система rvm; rvm gemset export system.gems; рвм 1,8,7; Система импорта Gemset RVM перенести ваши драгоценные камни rvm - по умолчанию 1.8.7

Примечание:
Начиная с версии 1.8.0, RVM снова загружает файлы .rvmrc, по умолчанию после запроса разрешение доверять этому, конечно. Если вы не хотите, чтобы его включили, просто установите: export rvm_project_rvmrc = 0 В вашем файле / etc / rvmrc или $ HOME / .rvmrc. Это выключит перехватывает cd / pushd при добавлении функции rvm () в вашу оболочку.

Пример: echo 'export rvm_project_rvmrc = 0' >> $ HOME / .rvmrc; (Затем закройте текущую оболочку и откройте новую.)

На момент написания этой статьи текущий RVM был 1.8.3, требуемый Xcode минимально 3.2.1, и вы можете использовать либо readline в Homebrew, RVM 'rvm pkg install readline' или встроенную readline Lion (хотя есть были значительные сообщения об этой ошибке).

Вы передадите эту информацию, как показано на сайте.

0 голосов
/ 15 апреля 2011

Вы должны установить инструменты разработчика.Вы можете скачать Xcode (с инструментами разработчика в комплекте) за 5 долларов в магазине приложений Mac.

...