web-dev-qa-db-fra.com

Impossible d'installer Ruby sous Lion avec RVM - problèmes GCC

La plupart des questions concernant ce problème sont dues à l'absence de Xcode; J'ai Xcode 4.2 installé.

Tentative d'installation:

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 est disponible:

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

Basé sur config.log (posté en bas en raison de la taille), j'ai essayé de faire un symlinking gcc-4.2 à gcc puis d'installer:

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 .

Je pourrais donc probablement simplement récupérer du gcc ailleurs, mais je me demande surtout pourquoi cela se produit. L'installation de Xcode ne devrait-elle pas suffire?

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

Cette réponse a été modifiée plusieurs fois et contient maintenant plusieurs solutions alternatives . Essayez d'abord la solution simple "Edit 3".

Ruby 1.9.3-p125 et versions ultérieures ont le support officiel de clang , donc si vous installez une telle version, vous ne devriez pas avoir besoin de GCC. Si vous installez une version plus ancienne de Ruby, lisez la suite.

Pour compiler Ruby avec GCC, vous avez besoin d'une version de GCC non LLVM, qui n'est plus incluse dans XCode 4.2. Installez-le vous-même (ou rétrogradez temporairement vers XCode 4.1), puis faites CC=/usr/local/bin/gcc-4.2 rvm install 1.9.3 --enable-shared (en substituant le chemin d'accès à votre gcc non-LLVM).

Edit: https://github.com/kennethreitz/osx-gcc-installer/downloads peut aider à installer GCC. Il y a aussi quelques informations disponibles en exécutant rvm requirements.

Edit 2: Pour une solution plus simple, vous pouvez essayer d’ajouter --with-gcc=clang aux arguments de configure pour que Ruby utilise clang à la place de GCC.

Edit 3 : rvm install 1.9.3 --with-gcc=clang le fait pour vous.

Remarque: avec les versions actuelles de XCode, vous devez installer les outils de ligne de commande séparément à partir du menu XCode -> Préférences -> Téléchargements -> Composants. Ceci est une condition préalable à toute compilation avec XCode sur la ligne de commande, pas seulement Ruby.

Remarque 2: Si quelque chose ne fonctionne pas après avoir suivi les étapes ci-dessous, essayez de redémarrer ou de vous reconnecter pour vous assurer que l'environnement est correctement configuré.

Remarque 3: les versions Ruby antérieures à 1.9.3-p125 peuvent ne pas toujours être entièrement compatibles avec clang. Testez donc votre logiciel de manière approfondie si vous utilisez la solution "edit 3" dans un environnement de production.

552
Arkku

SOMMAIRE POUR LE DÉBORD DE STACK

J'essayais d'installer SiriProxy sur une installation propre de Lion sur Xcode depuis l'App Store

J'ai gardé des erreurs telles que: Le CC fourni (/ usr/bin/gcc) est basé sur 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`.


Après 2 jours, finalement l’a fait fonctionner avec ces deux lignes:

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

Avant cela, j'avais essayé tous les articles de stackoverflow sur Ruby et Lion, ce qui a peut-être permis de procéder à une configuration facilitant le fonctionnement des 2 étapes ci-dessus:

Les choses que j'ai essayées incluent:

Exécution de Install Xcode.app (je l’avais téléchargée à partir de l’App Store - l’exécution de cette opération n’est plus une installation)

L'installation

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

Mettre en place CC dans

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

La première ligne provient de l'instruction d'installation de SiriProxy https://github.com/plamoni/SiriProxy

2ème ligne d'exportation CC n'a jamais semblé fonctionner. Alors ne pas ajouter.

Il a eu beaucoup de versions chaque pointant j'ai finalement utilisé CC =/usr/bin/gcc-4.2 rvm installer 1.9.3 --enable-shared

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

Travaillé pour moi Ce fut sur un tout nouveau Lion avec Xcode (n'avait pas de GCC "traditionnel").

18
Michael Neale

OK, je n'ai pas eu à installer gcc-4.2 séparément, j'ai utilisé celui livré en XCode, mais j'ai eu un problème où le --with-gcc=clang n'était pas transmis. Ajout de la ligne suivante à mon .rvmrc:

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

Travaillé au besoin

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]

Notez que mon env est la suivante

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

J'ai essayé d'utiliser la réponse de passage de --with-gcc=clang sur la ligne de commande à la commande de mise à niveau de rvm, mais cela n'a pas fonctionné, il n'a pas semblé obtenir de passage de configuration à configurer. Apparemment, le problème dans RVM d'arguments non transmis à configurer est résolu (dans commit 1641ceb0 en 2011), mais même après la mise à niveau de RVM au plus tard (via rvm get latest), il n'a toujours pas été passé. Utiliser le fichier .rvmrc était la seule façon dont cela fonctionnerait pour moi.

8
Leif

Edit3: ne fonctionne pas, essayez d’installer le gcc séparément de https://github.com/kennethreitz/osx-gcc-installer/downloads

4
JP.

Je vais suggérer brasser de rvm requirements je l'ai installé alors que j'ai déjà installé la dernière version Xcode 4.4 (4F250)

Homebrew:

Si vous utilisez Homebrew, vous pouvez installer Apple-gcc42 et les bibliothèques requises à partir de homebrew/dupes:

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

Cela peut coexister avec une installation existante de Xcode 4.2+ ou des outils de ligne de commande pour Xcode.

Et tu peux toujours faire

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

et puis si nécessaire

$ brew remove Apple-gcc42

ou tout autre programme installé par brassage (voir la documentation pour des explications sur ces 2 commandes), vous pouvez aussi

/join #machomebrew

sur freenode (pas #homebrew je pense que c'est de la vraie bière homebrew et apparentée)

4
tyoc213

Seulement répondre ici parce que je ne peux pas voter/commenter le commentaire de Leandro sur la question initiale. Après avoir passé des jours à essayer de faire en sorte que cela fonctionne, sa solution était celle qui enfin la faisait fonctionner pour moi:

edit3 n'a pas fonctionné pour moi (Xcode 4.2.1), mais après avoir installé readline

 rvm pkg install readline 

et en passant un paramètre supplémentaire

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

il s'est installé avec succès.

4
Dave Smylie

Vous pouvez essayer d'installer Outils de ligne de commande pour Xcode , ce qui inclut GCC, LLMV et d'autres outils exclus de Xcode 4.2 et versions ultérieures.

4
Chris

Assurez-vous que vous êtes sur la dernière version. En utilisant la version 1.10.0, rien de ce qui précède n'a fonctionné pour moi. De plus, rvm get latest m'a dit à tort "Vous avez déjà la dernière version!" je devais donc rvm implode et réinstaller rvm (1.15.4), ce qui me donnait automatiquement Ruby 1.9.3-p194 sans aucun problème.

1
Jared Beck

Avec brasser, vous pouvez installer Ruby dans un one-liner:

brew install Ruby193

Travaillé hors de la boîte pour moi sur OS X 10.8.4. (Si vous voulez la version 2.0, lancez simplement brew install Ruby à la place)

Plus généralement, brew search Ruby vous montre les différentes pensions disponibles. Si vous voulez être vraiment spécifique, vous pouvez utiliser brew versions Ruby et récupérer une version spécifique à la place.

Vous aurez peut-être besoin d'outils xcode et de ligne de commande, mais la configuration de brew vérifiera tout cela pour vous.

1
Nils

J'ai le même problème, car j'utilise xcode 4.3.2 et Lion 10.7.3, et j'ai changé mon ordinateur portable il y a quelques jours, puis j'ai transféré tous les contenus de l'ancien ordinateur portable. Apparemment, certains fichiers binaires ne sont pas transférés, tels que gcc.

Et puis j'ai fait ce qui suit:

  1. Supprimer Xcode 4.3.2 en le faisant glisser dans la corbeille
  2. Téléchargez le package d'installation gcc v2 depuis https://github.com/kennethreitz/osx-gcc-installer/downloads
  3. Installez-le
  4. Puis rvm install 1.9.2 travaille pour moi
1
Leon Guan

Téléchargez et utilisez JewelryBox L'interface graphique officielle de RVM pour Mac OS. Dans "Ajouter Ruby", sélectionnez votre version de Ruby. Avant d’installer, assurez-vous de sélectionner "Utiliser Clang" exactement comme le suggère Éditer 3 de la réponse acceptée dans ce fil de discussion.

1
Raj Pawan Gumdal

Pour moi, rien de ce qui précède n'a fonctionné tel quel. Ce qui a finalement fonctionné était

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

L'astuce spéciale consistait à supprimer libsqllite qui, selon le journal de construction, manquait de l'architecture 64 bits requise.

1
raimohanska

Il suffit de dire à configure d'utiliser gcc au lieu de gcc-4.2 sur Lion (Mac OSX 10.7.2)

Compiler Ruby-1.9.3 à partir du source

Vous pouvez voir dans votre sortie de configuration:

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

Si vous recherchez le config.log, vous voyez:

CC='gcc-4.2'

J'ai eu le même problème, alors je lance configure en sélectionnant gcc au lieu de 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]

(Je ne suis pas sûr de ce qu'est le configure: WARNING: unrecognized options: --with-libyaml-dir dans votre sortie, je suppose que vous l'avez compris?)

1
stefanB

Une solution plus simple et plus récente consiste simplement à utiliser railsinstaller.org . Osx-gcc y est intégré, ce qui en fait un téléchargement et une installation faciles. Après avoir récemment interféré avec un nouveau Shell, je me suis retrouvé à vider mon environnement Rails. Après avoir essayé plusieurs des solutions ci-dessus (que j’ai pu ajouter auparavant), j’ai atterri en suivant les étapes ci-dessous pour que les choses fonctionnent à nouveau:

  • nuke votre environnement local, (pensez que rvm implode et désinstallez Xcode)
  • télécharger le paquet à partir de railsinstaller.org
  • double-cliquez et installez

Le programme d’installation prend du temps, car il installe git, rvm, homebrew et de nombreux autres produits.

1
Kaushik Gopal