Неможливо встановити Ruby під Левом із проблемами RVM - GCC


268

Більшість питань щодо цієї проблеми пов'язані з відсутністю Xcode; У мене встановлено Xcode 4.2.

Спроба встановлення:

rvm install 1.9.3
Installing Ruby from source to: /Users/jamie/.rvm/rubies/ruby-1.9.3-p0, this may take a while depending on your cpu(s)...

ruby-1.9.3-p0 - #fetching 
ruby-1.9.3-p0 - #extracted to /Users/jamie/.rvm/src/ruby-1.9.3-p0 (already extracted)
Fetching yaml-0.1.4.tar.gz to /Users/jamie/.rvm/archives
Extracting yaml-0.1.4.tar.gz to /Users/jamie/.rvm/src
Configuring yaml in /Users/jamie/.rvm/src/yaml-0.1.4.
Compiling yaml in /Users/jamie/.rvm/src/yaml-0.1.4.
Installing yaml to /Users/jamie/.rvm/usr
ruby-1.9.3-p0 - #configuring 
ERROR: Error running ' ./configure --prefix=/Users/jamie/.rvm/rubies/ruby-1.9.3-p0 --enable-shared --disable-install-doc --with-libyaml-dir=/Users/jamie/.rvm/usr ', please read /Users/jamie/.rvm/log/ruby-1.9.3-p0/configure.log
ERROR: There has been an error while running configure. Halting the installation.

configure.log:

[2011-11-07 04:32:17]  ./configure --prefix=/Users/jamie/.rvm/rubies/ruby-1.9.3-p0 --enable-shared --disable-install-doc --with-libyaml-dir=/Users/jamie/.rvm/usr 
configure: WARNING: unrecognized options: --with-libyaml-dir
checking build system type... x86_64-apple-darwin11.2.0
checking host system type... x86_64-apple-darwin11.2.0
checking target system type... x86_64-apple-darwin11.2.0
checking whether the C compiler works... no
configure: error: in `/Users/jamie/.rvm/src/ruby-1.9.3-p0':
configure: error: C compiler cannot create executables
See `config.log' for more details

GCC доступний:

gcc -v
Using built-in specs.
Target: i686-apple-darwin11
Configured with: /private/var/tmp/llvmgcc42/llvmgcc42-2336.1~1/src/configure --disable-checking --enable-werror --prefix=/Developer/usr/llvm-gcc-4.2 --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-prefix=llvm- --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib --build=i686-apple-darwin11 --enable-llvm=/private/var/tmp/llvmgcc42/llvmgcc42-2336.1~1/dst-llvmCore/Developer/usr/local --program-prefix=i686-apple-darwin11- --host=x86_64-apple-darwin11 --target=i686-apple-darwin11 --with-gxx-include-dir=/usr/include/c++/4.2.1
Thread model: posix
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)

ls /usr/bin | grep gcc         
gcc
i686-apple-darwin11-llvm-gcc-4.2
llvm-gcc
llvm-gcc-4.2

На основі config.log (розміщено внизу через розмір) я спробував пов'язувати gcc-4.2 з gcc, а потім встановити:

rvm install 1.9.3                       
ERROR: The autodetected CC(/usr/bin/gcc-4.2) is LLVM based, it is not yet fully supported by ruby and gems, please read `rvm requirements`, and set CC=/path/to/gcc .

Тому я міг би просто захопити gcc в іншому місці, але мене найбільше хвилює питання, чому це відбувається. Чи не має бути достатньо встановити Xcode?

config.log:

This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by configure, which was
generated by GNU Autoconf 2.68.  Invocation command line was

  $ ./configure --prefix=/Users/jamie/.rvm/rubies/ruby-1.9.3-p0 --enable-shared --disable-install-doc --with-libyaml-dir=/Users/jamie/.rvm/usr

## --------- ##
## Platform. ##
## --------- ##

hostname = Wilson.local
uname -m = x86_64
uname -r = 11.2.0
uname -s = Darwin
uname -v = Darwin Kernel Version 11.2.0: Tue Aug  9 20:54:00 PDT 2011; root:xnu-1699.24.8~1/RELEASE_X86_64

/usr/bin/uname -p = i386
/bin/uname -X     = unknown

/bin/arch              = unknown
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = Mach kernel version:
     Darwin Kernel Version 11.2.0: Tue Aug  9 20:54:00 PDT 2011; root:xnu-1699.24.8~1/RELEASE_X86_64
Kernel configured for up to 4 processors.
4 processors are physically available.
4 processors are logically available.
Processor type: i486 (Intel 80486)
Processors active: 0 1 2 3
Primary memory available: 8.00 gigabytes
Default processor set: 110 tasks, 546 threads, 4 processors
Load average: 1.28, Mach factor: 2.71
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /Users/jamie/.rvm/usr/bin
PATH: /usr/bin
PATH: /bin
PATH: /usr/sbin
PATH: /sbin
PATH: /usr/local/bin
PATH: /usr/X11/bin
PATH: /Users/jamie/bin
PATH: /Users/jamie/.rvm/bin
PATH: /Users/jamie/.rvm/bin


## ----------- ##
## Core tests. ##
## ----------- ##

configure:2764: checking build system type
configure:2778: result: x86_64-apple-darwin11.2.0
configure:2849: checking host system type
configure:2862: result: x86_64-apple-darwin11.2.0
configure:2882: checking target system type
configure:2895: result: x86_64-apple-darwin11.2.0
configure:3376: checking for C compiler version
configure:3385: gcc-4.2 --version >&5
./configure: line 3387: gcc-4.2: command not found
configure:3396: $? = 127
configure:3385: gcc-4.2 -v >&5
./configure: line 3387: gcc-4.2: command not found
configure:3396: $? = 127
configure:3385: gcc-4.2 -V >&5
./configure: line 3387: gcc-4.2: command not found
configure:3396: $? = 127
configure:3385: gcc-4.2 -qversion >&5
./configure: line 3387: gcc-4.2: command not found
configure:3396: $? = 127
configure:3416: checking whether the C compiler works
configure:3438: gcc-4.2    conftest.c  >&5
./configure: line 3440: gcc-4.2: command not found
configure:3442: $? = 127
configure:3480: result: no
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define CANONICALIZATION_FOR_MATHN 1
| /* end confdefs.h.  */
| 
| int
| main ()
| {
| 
|   ;
|   return 0;
| }
configure:3485: error: in `/Users/jamie/.rvm/src/ruby-1.9.3-p0':
configure:3487: error: C compiler cannot create executables
See `config.log' for more details

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv_build=x86_64-apple-darwin11.2.0
ac_cv_env_CCC_set=
ac_cv_env_CCC_value=
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=
ac_cv_env_CFLAGS_value=
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_CXXFLAGS_set=
ac_cv_env_CXXFLAGS_value=
ac_cv_env_CXX_set=
ac_cv_env_CXX_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_host_alias_set=
ac_cv_env_host_alias_value=
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_host=x86_64-apple-darwin11.2.0
ac_cv_prog_CC=gcc-4.2
ac_cv_target=x86_64-apple-darwin11.2.0

## ----------------- ##
## Output variables. ##
## ----------------- ##

ALLOCA=''
AR=''
ARCHFILE=''
ARCH_FLAG=''
AS=''
ASFLAGS=''
BASERUBY='ruby'
BUILTIN_ENCOBJS=''
BUILTIN_TRANSOBJS=''
BUILTIN_TRANSSRCS=''
CAPITARGET=''
CC='gcc-4.2'
CCDLFLAGS=''
CFLAGS=''
CHDIR=''
COMMON_HEADERS=''
COMMON_LIBS=''
COMMON_MACROS=''
COUTFLAG=''
CP=''
CPP=''
CPPFLAGS=''
CPPOUTFILE=''
CXX='g++-4.2'
CXXFLAGS=''
DEFS=''
DLDFLAGS=''
DLDLIBS=''
DLEXT2=''
DLEXT=''
DLLWRAP=''
DOT=''
DOXYGEN=''
ECHO_C='\c'
ECHO_N=''
ECHO_T=''
EGREP=''
ENABLE_SHARED=''
EXECUTABLE_EXTS=''
EXEEXT=''
EXPORT_PREFIX=''
EXTOUT=''
EXTSTATIC=''
GCC=''
GNU_LD=''
GREP=''
INSTALLDOC=''
INSTALL_DATA=''
INSTALL_PROGRAM=''
INSTALL_SCRIPT=''
LDFLAGS=''
LDSHARED=''
LDSHAREDXX=''
LIBEXT=''
LIBOBJS=''
LIBPATHENV=''
LIBPATHFLAG=''
LIBRUBY=''
LIBRUBYARG=''
LIBRUBYARG_SHARED=''
LIBRUBYARG_STATIC=''
LIBRUBY_A=''
LIBRUBY_ALIASES=''
LIBRUBY_DLDFLAGS=''
LIBRUBY_LDSHARED=''
LIBRUBY_RELATIVE=''
LIBRUBY_SO=''
LIBS=''
LINK_SO=''
LN_S=''
LTLIBOBJS=''
MAINLIBS=''
MAJOR='1'
MAKEDIRS=''
MAKEFILES=''
MANTYPE=''
MINIOBJS=''
MINIRUBY=''
MINOR='9'
MKDIR_P=''
NM=''
NROFF=''
NULLCMD=''
OBJCOPY=''
OBJDUMP=''
OBJEXT=''
OUTFLAG=''
PACKAGE=''
PACKAGE_BUGREPORT=''
PACKAGE_NAME=''
PACKAGE_STRING=''
PACKAGE_TARNAME=''
PACKAGE_URL=''
PACKAGE_VERSION=''
PATH_SEPARATOR=':'
PKG_CONFIG=''
PREP=''
RANLIB=''
RDOCTARGET=''
RI_BASE_NAME=''
RM=''
RMALL=''
RMDIR=''
RMDIRS=''
RPATHFLAG=''
RUBYW_BASE_NAME='rubyw'
RUBYW_INSTALL_NAME=''
RUBY_BASE_NAME='ruby'
RUBY_INSTALL_NAME=''
RUBY_PROGRAM_VERSION='1.9.3'
RUBY_RELEASE_DATE='2011-10-30'
RUBY_SO_NAME=''
RUNRUBY=''
SET_MAKE=''
SHELL='/bin/sh'
SOLIBS=''
STATIC=''
STRIP=''
SYMBOL_PREFIX=''
TEENY='1'
TEST_RUNNABLE=''
THREAD_MODEL=''
TRY_LINK=''
UNIVERSAL_ARCHNAMES=''
UNIVERSAL_INTS=''
USE_RUBYGEMS=''
WERRORFLAG=''
WINDRES=''
XCFLAGS=''
XLDFLAGS=''
XRUBY=''
XRUBY_LIBDIR=''
XRUBY_RUBYHDRDIR=''
XRUBY_RUBYLIBDIR=''
ac_ct_CC=''
ac_ct_CXX=''
ac_ct_OBJCOPY=''
ac_ct_OBJDUMP=''
arch=''
bindir='${exec_prefix}/bin'
build='x86_64-apple-darwin11.2.0'
build_alias=''
build_cpu='x86_64'
build_os='darwin11.2.0'
build_vendor='apple'
cflags=' ${optflags} ${debugflags} ${warnflags}'
configure_args=''
cppflags=''
cxxflags=' ${optflags} ${debugflags} ${warnflags}'
datadir='${datarootdir}'
datarootdir='${prefix}/share'
debugflags=''
docdir='${datarootdir}/doc/${PACKAGE}'
dvidir='${docdir}'
exec=''
exec_prefix='NONE'
host='x86_64-apple-darwin11.2.0'
host_alias=''
host_cpu='x86_64'
host_os='darwin11.2.0'
host_vendor='apple'
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
oldincludedir='/usr/include'
optflags=''
pdfdir='${docdir}'
prefix='/Users/jamie/.rvm/rubies/ruby-1.9.3-p0'
program_transform_name='s&^&&'
psdir='${docdir}'
ridir=''
ruby_pc=''
ruby_version=''
rubyhdrdir=''
rubylibprefix=''
rubyw_install_name=''
sbindir='${exec_prefix}/sbin'
setup=''
sharedstatedir='${prefix}/com'
sitearch=''
sitedir=''
sitehdrdir=''
sysconfdir='${prefix}/etc'
target='x86_64-apple-darwin11.2.0'
target_alias=''
target_cpu='x86_64'
target_os='darwin11.2.0'
target_vendor='apple'
try_header=''
vendordir=''
vendorhdrdir=''
warnflags=''

## ----------- ##
## confdefs.h. ##
## ----------- ##

/* confdefs.h */
#define PACKAGE_NAME ""
#define PACKAGE_TARNAME ""
#define PACKAGE_VERSION ""
#define PACKAGE_STRING ""
#define PACKAGE_BUGREPORT ""
#define PACKAGE_URL ""
#define CANONICALIZATION_FOR_MATHN 1

configure: exit 77

Ви пробували налаштування CC=/usr/bin/gcc?
mu занадто короткий

Щось цікавого у config.logфайлі?
mu занадто короткий

Хм; У мене той самий gcc, і він встановлений нормально :( Друга річ на SO, яка добре працювала для мене, але не для когось іншого; зазвичай це навпаки.
Дейв Ньютон

mu: Зараз я додав весь config.log. Нічого незвичного для моїх очей. Це версія без символьного посилання. Дейв: Ну, це комп’ютери :-).
Джеймі Шембрі

Відповіді:


553

Ця відповідь редагувалася кілька разів і тепер містить кілька альтернативних рішень. Спробуйте спочатку просте рішення "Edit 3".

У Ruby 1.9.3-p125 та пізніших версій є офіційна підтримка clang , тому якщо ви встановлюєте таку версію, вам не потрібно GCC. Якщо ви встановлюєте старішу версію Ruby, читайте далі.

Щоб компілювати Ruby з GCC, вам потрібна версія, що не включає LLVM GCC, яка більше не входить до XCode 4.2. Встановіть його самостійно (або поновіть до XCode 4.1 тимчасово), після чого зробіть CC=/usr/local/bin/gcc-4.2 rvm install 1.9.3 --enable-shared(замінивши шлях до вашого не-LLVM gcc).

Редагувати: https://github.com/kennethreitz/osx-gcc-installer/downloads може допомогти встановити GCC. Існує також деяка інформація, доступна при запуску rvm requirements.

Редагування 2: Для більш простого рішення ви можете спробувати додати --with-gcc=clangдо аргументів для того, configureщоб Ruby використовував clang замість GCC.

Правка 3 : rvm install 1.9.3 --with-gcc=clangробить це для вас.

Примітка. Для поточних версій XCode вам потрібно встановити інструменти командного рядка окремо з меню XCode -> Налаштування -> Завантаження -> Компоненти. Це необхідна умова для будь-якого компіляції з XCode в командному рядку, а не лише Ruby.

Примітка 2. Якщо щось не працює після виконання кроків, спробуйте зробити перезавантаження або повторно ввійти, щоб переконатися, що середовище налаштовано правильно.

Примітка 3: Версії Ruby до 1.9.3-p125 не завжди можуть бути повністю сумісними з клангом, тому ретельно перевіряйте програмне забезпечення, якщо ви використовуєте рішення "редагувати 3" у виробничих умовах.


3
GCC-10.7.pkg не зробив це для мене - я думаю, він може працювати лише на 10.7.0 (я працюю 10.7.2), але, можливо, v2 pkg працює. У всякому разі, --with-gcc = clang зробив це для мене! Дякую!
Джеймі Шембрі

2
Дякую, Edit 3 виправили це і для мене.
відлуння

1
edit3 не працював для мене (Xcode 4.2.1), але після встановлення readline rvm pkg install readlineта передачі додаткового параметра rvm install 1.9.3 --with-gcc=clang --with-readline-dir=$rvm_path/usrвін встановився успішно.
lendro

7
Як зазначається у цій відповіді , існує інша альтернатива. rvm install 1.9.3 --with-gcc=clangпрацював на мене, але це не повністю підтримується. Ви також можете використовувати CC=/usr/bin/gcc-4.2 rvm install 1.9.3 --enable-shared, що здається краще підтримується. Раніше я osx-gcc-installerотримував 4,2, я вважаю.
jrhorn424

2
Мені довелося запустити джерела очищення rvm, тоді - withwggcc = clang працював
Shane

22

ПІДСУМКОВИЙ ПЕРЕГЛЯД СТАКУ

Я намагався встановити SiriProxy на чисту установку Lion на Xcode від App Store

Я постійно отримував помилки на кшталт: Наданий CC (/ usr / bin / gcc) заснований на LLVM.

bash-3.2$ rvm install 1.9.3
ERROR: The provided CC(/usr/bin/gcc) is LLVM based, it is not yet fully supported by ruby and gems, please read `rvm requirements`.


Через 2 дні, нарешті, він почав працювати з цими двома рядками:

http://stackoverflow.com/questions/8000145/ruby-rvm-llvm-and-mysql

bash-3.2$ rvm get head
bash-3.2$ CC=/usr/bin/gcc-4.2 rvm install 1.9.3 --enable-shared

До цього я спробував кожну статтю про stackoverflow про Ruby and Lion, тому роблячи це, можливо, було зроблено певну настройку, яка допомогла вищезгаданим 2 крокам працювати:

Я спробував:

Запуск встановлення Xcode.app (я завантажив з App Store - запуск цього виконує подальшу установку)

Встановлення

https://github.com/kennethreitz/osx-gcc-installer/downloads may help for installing GCC.

Налаштування CC в

більше /Users//.bash_profile

bash-3.2$ more /Users/<USERNAME>/.bash_profile 
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function
export CC=/usr/share/TargetConfigs/bin/gcc

Перший рядок надійшла з інструкції щодо встановлення SiriProxy https://github.com/plamoni/SiriProxy

Експорт 2-го рядка ЕК ніколи не здавався. Тому не додайте.

У ній було багато версій, кожна з яких вказувала, я нарешті використав CC = / usr / bin / gcc-4.2 rvm встановити 1.9.3 - увімкнено-спільний доступ


Ви пробували rvm install 1.9.3 --with-gcc=clang?
Арку

CC = / usr / bin / gcc-4.2 rvm встановити 1.9.3 - під час спільного використання, працював над Snow Leopard з Xcode 4.2, дякую!
Флорін

Я б радив проти rvm get headінших користувачів. Це витягується з голови git repo і може не бути стійким. rvm get latestзахоплює останню стабільну версію. Якщо це не вирішить цю проблему для вас, rvm install 1.9.3 --with-gcc=clangварто спробувати спочатку, оскільки це менше шансів застосувати побічні ефекти
Ерік Ху

18
rvm install 1.9.3 --with-gcc=clang

Працювали для мене. Це було на абсолютно новому Леві з Xcode (не було "традиційного" GCC).


8

Гаразд, мені не довелося встановлювати gcc-4.2 окремо, я використовував один, доставлений у XCode, але у мене виникла проблема, через --with-gcc=clangяку не вдалося пройти. До мого додано наступний рядок .rvmrc:

export rvm_configure_flags="--with-gcc=clang"

Працювали як потрібно

rvm upgrade ruby-1.9.2-p290 ruby-1.9.3-p125
...
ruby-1.9.3-p125 - #extracted to /Users/leif/.rvm/src/ruby-1.9.3-p125 (already extracted)
ruby-1.9.3-p125 - #configuring
ruby-1.9.3-p125 - #compiling 
ruby-1.9.3-p125 - #installing
....
Successfully migrated ruby-1.9.2-p290 to ruby-1.9.3-p125
Upgrade complete!

bang:$ ruby -v
ruby 1.9.3p125 (2012-02-16 revision 34643) [x86_64-darwin11.3.0]

Зауважте, моє оточення таке

ОС

Darwin bang.local 11.3.0 Darwin Kernel Version 11.3.0: Thu Jan 12 18:47:41 PST 2012; root:xnu-1699.24.23~1/RELEASE_X86_64 x86_64

XCode

XCode 4.2.1 Build 4D502

GCC

i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)

lrwxr-xr-x  1 root  wheel  12 22 Dec 21:30 /usr/bin/gcc -> llvm-gcc-4.2

Я спробував скористатися відповіддю переходу --with-gcc=clangв командному рядку до команди оновлення rvm, але це не спрацювало, не здавалося, що пройти передачу від rvm для налаштування. Мабуть, проблема в RVM аргументів, які не передаються для налаштування, виправлена ​​(у фіксації 1641ceb0в 2011 році), але навіть після оновлення RVM до останнього (через rvm get latest) вона все ще не була передана. Використання .rvmrcфайлу було для мене єдиним способом.



4

Тут я відповідаю лише тому, що я не можу проголосувати / прокоментувати коментар Leandro щодо оригінального питання. Провівши дні, намагаючись змусити це працювати, Його рішення було тим, що нарешті змусило мене працювати:

edit3 не працював для мене (Xcode 4.2.1), але після встановлення readline

 rvm pkg install readline 

і передача додаткового параметра

rvm install 1.9.3 --with-gcc=clang --with-readline-dir=$rvm_path/usr 

він успішно встановлений.



4

Я запропоную варити з того, що rvm requirementsя встановив, поки я вже встановив останню версію Xcode 4.4 (4F250)

Домашня мова:

Якщо ви використовуєте Homebrew, ви можете встановити яблуко-gcc42 та потрібні бібліотеки з домашньої / dupes:

  brew update
  brew tap homebrew/dupes
  brew install autoconf automake apple-gcc42
  rvm pkg install openssl

Це може жити поряд з існуючою програмою встановлення Xcode 4.2+ або Інструментами командного рядка для Xcode.

І ти завжди можеш це зробити

$ brew cleanup [specific-formula or without-formula to clean all]

а потім при необхідності

$ brew remove apple-gcc42

або будь-яку іншу встановлену програму через заварку (див. документи для пояснення цих двох команд), також ви можете

/join #machomebrew

на freenode (не #homebrew Я думаю, що це справжнє домашнє пиво та пов'язане з ним)


1

Просто скажіть конфігурацію використовувати gcc замість gcc-4.2 на Lion (Mac OSX 10.7.2)

Складання рубіну-1.9.3 з джерела

Ви можете бачити у своєму конфігураційному виході:

configure:3385: gcc-4.2 --version >&5
./configure: line 3387: gcc-4.2: command not found

Якщо ви шукаєте, config.logви бачите:

CC='gcc-4.2'

У мене була така ж проблема, тому я біжу configureпід час вибору gccзамість gcc-4.2:

> CC=gcc ./configure --prefix=/usr/local 
> make
> make install
> ruby --version
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.2.0]

(Я не впевнений, що є configure: WARNING: unrecognized options: --with-libyaml-dirу ваших результатах. Я думаю, ви це зрозуміли?)


1
Зауважте, що ОР посилалося gccна gcc-4.2, що зробило доступною команду, але виявило основну проблему, що їх gccбуло насправді llvm-gcc(і не було встановлено не-LLVM GCC).
Арку

1

Завантажте та використовуйте JewelryBox Офіційний графічний інтерфейс RVM для Mac OS. Всередині "Додати Ruby" виберіть версію Ruby. Перш ніж встановити, переконайтесь, що ви вибрали «Використовувати Clang» так само, як пропонує редагування 3 прийнятої відповіді в цій темі.


1

Отримав таку ж проблему, оскільки я використовую xcode 4.3.2 та Lion 10.7.3, і я змінив свій ноутбук кілька днів тому, а потім перенести весь вміст зі старого ноутбука. Мабуть, деякі бінарні файли не отримують передачу, наприклад, gcc.

І тоді я зробив наступне:

  1. Видаліть Xcode 4.3.2, перетягнувши його у кошик
  2. Завантажте пакет gcc install v2 з https://github.com/kennethreitz/osx-gcc-installer/downloads
  3. Встановіть його
  4. Тоді встановіть rmm 1.9.2 для мене

1

Переконайтеся, що ви останній обертів. Використовуючи rvm 1.10.0, нічого з перерахованого вище не працювало для мене. Крім того, rvm get latestпомилково мені сказали: "У вас вже є остання версія!" тому мені довелося rvm implodeперевстановити rvm (1.15.4), що автоматично дало мені рубін 1.9.3-p194 без суєти.


1

Для мене жоден із перерахованих вище не працював так, як є. Що, нарешті, працювало

rvm get head
rm -rf  /usr/local/lib/libsqlite3*
CC=/usr/bin/gcc-4.2 rvm install 1.9.3 --enable-shared

Спеціальна хитрість полягала в тому, щоб видалити libsqllite, який, згідно з журналом збірки, не мав необхідної 64-бітної архітектури чи чогось іншого.


1

Більш свіжий простіший варіант - просто використовувати railsinstaller.org . У ньому упакований osx-gcc, тому він простий як завантаження та встановлення. Нещодавно втрутившись у нову оболонку, я приземлився, приглушивши своє оточення рейок. Спробувавши багато перерахованих вище рішень (які раніше я працював, я міг би додати), я приземлився, виконуючи наведені нижче дії, щоб знову працювати.

  • запустити своє місцеве середовище (подумайте, що rvm імплодує та видаляє Xcode)
  • завантажити pkg з railsinstaller.org
  • двічі клацніть та встановіть

Інсталятор потребує певного часу, враховуючи, що він встановлює git, rvm, homebrew та купу інших смаколиків.


1

За допомогою варіння ви можете встановити рубін в одноколісний:

brew install ruby193

Я працював з коробки для мене на OS X 10.8.4. (Якщо ви хочете 2.0, просто запустіть brew install rubyзамість нього)

Більш загально, brew search rubyви показуєте різні доступні репости, і якщо ви хочете отримати дійсно конкретні, ви можете використовувати brew versions rubyта оформити певну версію замість цього.

Можливо, вам знадобляться інструменти xcode та командного рядка, але налаштування brew перевірить все це для вас.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.