Обновление Ruby не работает с использованием двух методов

Я попытался установить ruby ​​версию 1.9.3 с этим на моем mac 10.6.8:

$ \curl -L https://get.rvm.io | bash -s stable --ruby Oskar-Niburskis-MacBook-Pro:~ oskarniburski$ rvm install ruby-1.9.3-p362 Searching for binary rubies, this might take some time. No binary rubies available for: osx/10.6/i386/ruby-1.9.3-p362. Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies. Checking requirements for osx. Installing requirements for osx. Updating system............................................. Installing required packages: autoconf, automake, libtool, pkgconfig, libiconv, libyaml, libffi, readline, libksba, openssl, curl-ca-bundle, sqlite3, zlib, gdbm, ncurses... Error running 'requirements_osx_port_libs_install autoconf automake libtool pkgconfig libiconv libyaml libffi readline libksba openssl curl-ca-bundle sqlite3 zlib gdbm ncurses', please read /Users/oskarniburski/.rvm/log/1380238189_ruby-1.9.3-p362/package_install_autoconf_automake_libtool_pkgconfig_libiconv_libyaml_libffi_readline_libksba_openssl_curl-ca-bundle_sqlite3_zlib_gdbm_ncurses.log Requirements installation failed with status: 1. 

Моя версия:

 Oskar-Niburskis-MacBook-Pro:~ oskarniburski$ ruby --version ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin10.0] 

Вывод файла журнала:

 Oskar-Niburskis-MacBook-Pro:~ oskarniburski$ cat /Users/oskarniburski/.rvm/log/1380238189_ruby-1.9.3-p362/package_install_autoconf_automake_libtool_pkgconfig_libiconv_libyaml_libffi_readline_libksba_openssl_curl-ca-bundle_sqlite3_zlib_gdbm_ncurses.log [2013-09-26 19:30:17] requirements_osx_port_libs_install requirements_osx_port_libs_install () { __rvm_try_sudo port install "$@" || { typeset ret=$?; rvm_warn "There were package installation errors, make sure to read the log."; return $ret } } current path: /Users/oskarniburski command(16): requirements_osx_port_libs_install autoconf automake libtool pkgconfig libiconv libyaml libffi readline libksba openssl curl-ca-bundle sqlite3 zlib gdbm ncurses Warning: Xcode does not appear to be installed; most ports will likely fail to build. ---> Computing dependencies for autoconfError: Unable to execute port: can't read "build.cmd": Failed to locate 'make' in path: '/opt/local/bin:/opt/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin' or at its MacPorts configuration time location, did you move it? There were package installation errors, make sure to read the log. 

А затем попытался установить с помощью MacPorts, но он также не работал снова. Есть идеи?

 Oskar-Niburskis-MacBook-Pro:~ oskarniburski$ sudo port install ruby19 Warning: Xcode does not appear to be installed; most ports will likely fail to build. ---> Computing dependencies for ruby19Error: Unable to execute port: can't read "build.cmd": Failed to locate 'make' in path: '/opt/local/bin:/opt/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin' or at its MacPorts configuration time location, did you move it? 

Вот мой путь прямо сейчас:

/opt/local/bin:/opt/local/sbin:/usr/local/git/bin:/usr/X11/bin:/Users/oskarniburski/.rvm/bin:/usr/X11R6/bin:/Library/ Каркасы / Python.framework / Версии / 3,3 / бен: /Library/Frameworks/Python.framework/Versions/2.7/bin: /Library/Frameworks/Python.framework/Versions/Current/bin: / USR / бен: / бен: /usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin:/Users/oskarniburski/.rvm/bin

Ни один из «каких-то сделать» или не найти -b '\ make'. Первая имеет, какая команда не найдена, а для последней – неправильная опция -b

2 Solutions collect form web for “Обновление Ruby не работает с использованием двух методов”

Задача 1: make

Первая проблема заключается в том, что ruby ​​нужно скомпилировать, и обычно это делается с помощью make который будет считывать настройки из Makefile а затем вызывать компилятор. В OSX make установлен Xcode который устанавливает свои инструменты в /Developer/usr/bin а не в /usr/bin где можно было бы ожидать. Этот каталог не находится в $PATH по умолчанию, поэтому любые исполняемые файлы в нем не найдены оболочкой.

Вы можете исправить это для своего пользователя, добавив эту строку в свой файл ~/.bash_profile (обязательно добавьте его перед export $PATH строки export $PATH ):

 PATH="/Developer/usr/bin:$PATH" 

Однако это все равно не будет доступно для любых команд, выполняемых с правами root (например, sudo ). Я рекомендую вам добавить этот каталог в путь по умолчанию. Откройте /etc/profile , найдите строку, которая определяет путь туда, и добавьте к ней ссылку. Я нахожусь в системе Linux, но она должна выглядеть примерно так:

 PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" 

Просто добавьте каталог в конец, чтобы он выглядел так:

 PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/Developer/usr/bin" 

Если вы не хотите изменять значение по умолчанию, вы можете связать make с каталогом, который находится в $PATH по умолчанию:

  sudo ln -s /Developer/usr/bin/make /usr/bin 

Вам нужно будет сделать это для всего, что находится в /Developer/usr/bin поэтому я рекомендую вам изменить значение по умолчанию.

Проблема 2: поиск новой версии

На этом этапе вы сможете установить ruby ​​с помощью

 $ sudo port install ruby19 

Это верно, но ваша рубиновая версия, похоже, не обновляется:

 $ ruby --version ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin10.0] 

Это связано с тем, что по умолчанию port устанавливает свои файлы в /opt/local и устанавливает ваш исполняемый файл ruby ​​как /opt/local/bin/ruby1.9 . Еще один каталог, который не находится в вашей $PATH . Таким образом, вы можете либо повторить описанный выше процесс, либо добавить /opt/local/bin в ваш $PATH или вы можете связать исполняемый файл ruby1.9 с каталогом, который находится на вашем пути. Если вы добавите /opt/local/bin в ваш $PATH , вы сможете запустить v1.8 с ruby и ruby1.9 с ruby1.9 . Если вы хотите, чтобы все ваши существующие скрипты переключались на v1.9, я рекомендую вам сделать /usr/bin/ruby точку в новой версии.

Старая версия в /usr/bin на самом деле символическая ссылка:

 $ ls -l /usr/bin/ruby rwxr-xr-x 1 root wheel 76 25 Jun 2010 /usr/bin/ruby -> ../../System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby 

Это означает, что вы можете безопасно удалить его и заменить его ссылкой на новую версию:

 $ sudo rm /usr/bin/ruby; sudo ln -s /opt/local/bin/ruby1.9 /usr/bin/ruby 

Если вы когда-нибудь захотите вернуться и сделать ruby запуск v1.8, просто запустите обратную команду:

 $ sudo rm /usr/bin/ruby; sudo ln -s /System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby /usr/bin/ruby 

Если все пошло хорошо, ваш ruby умолчанию теперь v1.9:

 $ ruby --version ruby 1.9.3p448 (2013-06-27 revision 41675) [x86_64-darwin10] 

Взгляните на этот смысл. Показывает, как установить его для Mountain Lion.

  • Ruby, RVM и Mountain Lion

Выясняется, как использовать MacPorts или Homebrew. Как только вы получите этот квадрат, он показывает, как установить с помощью rvm .

  • обновить завиток на centos5
  • Проблема Yum на Centos 6.7
  • Неудачное изменение зависимостей для растягивания
  • Как выполнить автономное обновление в реальном времени?
  • Советы по автоматическому обновлению программного обеспечения в OpenSuse (zypper)
  • Где поставить системные кроны?
  • Обновления Debian Jessie
  • Что такое эквивалент Debian для обновления операционной системы до выпуска?
  • Модернизирован, чтобы проверить ветвь по ошибке в debian ... как я могу вернуться к стабильной?
  • apt-get upgrade не устанавливает обновления через работу crontab
  • Проблемы с обновлением apt-get на Debian (404 не найдены)
  • Linux и Unix - лучшая ОС в мире.