wake-up-neo.com

Kann Ruby unter Lion mit RVM - GCC-Problemen nicht installieren

Die meisten Fragen zu diesem Problem sind auf den fehlenden Xcode zurückzuführen. Ich habe Xcode 4.2 installiert.

Installationsversuch:

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 ist verfügbar:

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

Basierend auf config.log (aufgrund der Größe unten veröffentlicht) habe ich versucht, gcc-4.2 mit gcc zu verknüpfen und dann zu installieren:

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 .

Also könnte ich wahrscheinlich nur woanders nach gcc greifen, aber ich mache mir hauptsächlich Gedanken darüber, warum dies geschieht. Sollte die Installation von Xcode nicht ausreichen?

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
268
Jamie Schembri

Diese Antwort wurde mehrmals bearbeitet und enthält nun mehrere alternative Lösungen. Probieren Sie zuerst die einfache Lösung „Edit 3“ aus.

Ruby 1.9.3-p125 und höher unterstützen Clang offiziell . Wenn Sie also eine solche Version installieren, sollten Sie GCC nicht benötigen. Wenn Sie eine ältere Version von Ruby installieren, lesen Sie weiter.

Zum Kompilieren von Ruby mit GCC benötigen Sie eine Nicht-LLVM-Version von GCC, die in XCode 4.2 nicht mehr enthalten ist. Installieren Sie sie selbst (oder führen Sie vorübergehend ein Downgrade auf XCode 4.1 durch), und führen Sie dann CC=/usr/local/bin/gcc-4.2 rvm install 1.9.3 --enable-shared (Ersetzen des Pfads zu Ihrem Nicht-LLVM-gcc).

Edit: https://github.com/kennethreitz/osx-gcc-installer/downloads kann bei der Installation von GCC hilfreich sein. Es sind auch einige Informationen verfügbar, indem Sie rvm requirements.

Bearbeiten 2: Für eine einfachere Lösung können Sie versuchen, --with-gcc=clang zu den Argumenten zu configure für Ruby), um clang anstelle von GCC zu verwenden.

Edit 3 : rvm install 1.9.3 --with-gcc=clang macht das für dich.

Hinweis: Bei aktuellen Versionen von XCode müssen Sie die Befehlszeilentools separat vom XCode-Menü -> Einstellungen -> Downloads -> Komponenten installieren. Dies ist eine Voraussetzung für das Kompilieren mit XCode über die Befehlszeile, nicht nur mit Ruby.

Hinweis 2: Wenn nach dem Ausführen der Schritte etwas nicht funktioniert, versuchen Sie, einen Neustart durchzuführen oder sich erneut anzumelden, um sicherzustellen, dass die Umgebung korrekt eingerichtet ist.

Hinweis 3: Ruby Versionen vor 1.9.3-p125 sind möglicherweise nicht immer vollständig kompatibel mit clang. Testen Sie Ihre Software daher gründlich, wenn Sie die Lösung „edit 3“ in einer Produktionsumgebung verwenden.

552
Arkku

ZUSAMMENFASSUNG FÜR STAPELÜBERLAUF

Ich habe versucht, SiriProxy in einer sauberen Lion-Installation auf Xcode aus dem App Store zu installieren

Ich bekam immer wieder Fehler wie: Der bereitgestellte CC (/ usr/bin/gcc) ist LLVM-basiert.

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`.


Nach 2 Tagen hat es endlich mit diesen beiden Zeilen geklappt:

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

Vorher hatte ich jeden Stackoverflow-Artikel auf Ruby und Lion ausprobiert, daher haben diese möglicherweise einige Einstellungen vorgenommen, die die obigen 2 Schritte unterstützen:

Dinge, die ich ausprobiert habe, waren:

Ausführen der Installation von Xcode.app (Ich hatte sie aus dem App Store heruntergeladen - dies führt zu einer weiteren Installation)

Installieren

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

Richten Sie CC in ein

more /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

Die erste Zeile stammt aus der SiriProxy-Installationsanleitung https://github.com/plamoni/SiriProxy

2nd Line Export CC schien nie zu funktionieren. Also nicht hinzufügen.

Es gab viele Versionen, von denen jede zeigte, dass ich sie schließlich mit CC =/usr/bin/gcc-4.2 rvm install 1.9.3 --enable-shared verwendet habe

22
brian.clear
rvm install 1.9.3 --with-gcc=clang

Hat für mich gearbeitet. Dies war auf einem brandneuen Lion mit Xcode (hatte kein "traditionelles" GCC).

18
Michael Neale

OK, ich musste gcc-4.2 nicht separat installieren, ich habe das in XCode gelieferte verwendet, aber ich hatte ein Problem, bei dem der --with-gcc=clang Nicht durchgereicht wurde. Die folgende Zeile zu meinem .rvmrc Hinzugefügt:

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

Hat nach Bedarf funktioniert

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]

Beachten Sie, dass meine Umgebung die folgende ist

OS

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

Ich habe versucht, die Antwort der Übergabe von --with-gcc=clang In der Befehlszeile an den Befehl rvm upgrade zu verwenden, aber es hat nicht funktioniert, es scheint, als würde die Übergabe von rvm an die Konfiguration fehlschlagen. Anscheinend wurde das Problem in RVM behoben, dass Argumente nicht an configure übergeben wurden (in commit 1641ceb0 Im Jahr 2011), aber selbst nach dem Upgrade von RVM auf den neuesten Stand (über rvm get latest) Wurde es immer noch nicht übergeben . Die Verwendung der .rvmrc - Datei war die einzige Möglichkeit, die für mich funktionieren würde.

8
Leif

Edit3: funktioniert nicht. Versuchen Sie, den gcc getrennt von https://github.com/kennethreitz/osx-gcc-installer/downloads zu installieren

4
JP.

Ich werde vorschlagen brauen von rvm requirements Ich habe es installiert, während ich bereits die neueste Xcode-Version 4.4 (4F250) installiert habe

Homebrew:

Wenn Sie Homebrew verwenden, können Sie das Apple-gcc42 und die erforderlichen Bibliotheken von homebrew/dupes installieren:

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

Dies kann neben einer vorhandenen Installation von Xcode 4.2 oder höher oder mit Befehlszeilentools für Xcode erfolgen.

Und du kannst es immer tun

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

und dann wenn nötig

$ brew remove Apple-gcc42

oder ein anderes installiertes Programm durch Brauen (Erklärungen zu diesen beiden Befehlen finden Sie in den Dokumenten), das können Sie auch

/join #machomebrew

auf freenode (nicht #homebrew ich denke das ist echtes homebrew bier und ähnliches)

4
tyoc213

Ich antworte hier nur, weil ich nicht über Leandros Kommentar zur ursprünglichen Frage abstimmen/diesen kommentieren kann. Nachdem er tagelang versucht hatte, dies zum Laufen zu bringen, war Seine Lösung diejenige, die endlich es für mich zum Laufen brachte:

edit3 hat bei mir nicht funktioniert (Xcode 4.2.1), aber nach der Installation von readline

 rvm pkg install readline 

und Übergabe eines zusätzlichen Parameters

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

es wurde erfolgreich installiert.

4
Dave Smylie

Sie können versuchen, Befehlszeilentools für Xcode zu installieren. Es enthält GCC, LLMV und andere Tools, die in Xcode 4.2 und höher nicht enthalten sind.

4
Chris

Stellen Sie sicher, dass Sie auf dem neuesten RVM sind. Mit RVM 1.10.0 funktionierte keines der oben genannten Verfahren für mich. Außerdem, rvm get latest hat mir fälschlicherweise gesagt "Sie haben bereits die neueste Version!" also musste ich rvm implode und installiere rvm (1.15.4) neu, was mir automatisch Ruby 1.9.3-p194 ohne viel Aufhebens gab.

1
Jared Beck

Mit brew können Sie Ruby in einem Einzeiler installieren:

brew install Ruby193

Hat für mich unter OS X 10.8.4 sofort funktioniert. (Wenn Sie 2.0 wollen, führen Sie einfach brew install Ruby stattdessen)

Allgemeiner, brew search Ruby zeigt dir die verschiedenen verfügbaren Repos und wenn du wirklich spezifisch werden willst, kannst du brew versions Ruby und checke stattdessen eine bestimmte Version aus.

Möglicherweise benötigen Sie Xcode und Befehlszeilentools, aber das Setup von brew überprüft dies alles für Sie.

1
Nils

Ich habe das gleiche Problem, da ich xcode 4.3.2 und Lion 10.7.3 verwende und vor ein paar Tagen meinen Laptop geändert habe und dann alle Inhalte vom alten Laptop übertragen habe. Anscheinend werden einige Binärdateien nicht übertragen, wie z. B. gcc.

Und dann habe ich folgendes gemacht:

  1. Entfernen Sie Xcode 4.3.2, indem Sie es in den Papierkorb ziehen
  2. Laden Sie das gcc-Installationspaket v2 von https://github.com/kennethreitz/osx-gcc-installer/downloads herunter
  3. Es installieren
  4. Dann funktioniert rvm install 1.9.2 für mich
1
Leon Guan

Laden und verwenden Sie JewelryBox Die offizielle RVM-GUI für Mac OS. Wählen Sie unter "Ruby hinzufügen" Ihre Ruby-Version aus. Stellen Sie vor der Installation sicher, dass Sie "Clang verwenden" so auswählen, wie es die Bearbeitung 3 der akzeptierten Antwort in diesem Thread vorschlägt.

1

Für mich hat keines der oben genannten Verfahren so funktioniert, wie es ist. Was schließlich funktionierte, war

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

Der besondere Trick bestand darin, die libsqllite zu entfernen, der laut Build-Protokoll die erforderliche 64-Bit-Architektur oder etwas fehlte.

1
raimohanska

Sagen Sie einfach configure, dass gcc anstelle von gcc-4.2 verwendet werden soll unter Lion (Mac OSX 10.7.2)

Kompilieren von Ruby-1.9.3 aus dem Quellcode

Sie können in Ihrer Konfigurationsausgabe Folgendes sehen:

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

Wenn Sie den config.log Durchsuchen, sehen Sie:

CC='gcc-4.2'

Ich hatte das gleiche Problem, also starte ich configure, während ich gcc anstelle von gcc-4.2 Auswähle:

> 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]

(Ich bin mir nicht sicher, was der configure: WARNING: unrecognized options: --with-libyaml-dir In Ihrer Ausgabe ist. Ich denke, Sie haben das herausgefunden?)

1
stefanB

Eine neuere, einfachere Lösung besteht darin, einfach railsinstaller.org zu verwenden. Darin ist osx-gcc enthalten, so dass es so einfach wie ein Download und eine Installation ist. Nachdem ich mich kürzlich in eine neue Shell eingemischt hatte, landete ich in meiner Rails -Umgebung. Nachdem ich viele der oben genannten Lösungen ausprobiert hatte (die zuvor möglicherweise hinzugefügt wurden), landete ich mit den folgenden Schritten, um die Dinge wieder zum Laufen zu bringen:

  • nuke deine lokale Umgebung, (denke rvm implode und deinstalliere Xcode)
  • laden Sie das Paket von railsinstaller.org herunter
  • doppelklicken und installieren

Der Installer braucht einige Zeit, um Git, RVM, Homebrew und eine Reihe anderer Goodies zu installieren.

1
Kaushik Gopal