5

I'm trying to install Ruby 1.9.3 using rvm. However, when I type:

rvm install 1.9.3 

I get the following error:

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

I'm running Mac OS X Lion and my current version of Ruby is 1.9.2.

Edit: make.log:

make[1]: Entering directory `/Users/nick/.rvm/src/ruby-1.9.3/ext/readline' /usr/bin/gcc-4.2 -I. -I../../.ext/include/x86_64-darwin11.0.0 -I../.././include -I../.././ext/readline -DRUBY_EXTCONF_H=\"extconf.h\" -I/Users/nick/.rvm/usr/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long -fno-common -pipe -o readline.o -c readline.c 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[1]: Leaving directory `/Users/nick/.rvm/src/ruby-1.9.3/ext/readline' make: *** [mkmain.sh] Error 1 
0

4 Answers 4

12

The simpler, more general solution is to explicitly install the offending package and then reinstall with that package. In my case, it was aborting on openssl_missing, so:

rvm pkg install openssl rvm install 1.9.3 -C "--with-openssl-dir=$HOME/.rvm/usr" 

For your case, it's probably:

rvm pkg install readline rvm install 1.9.3 -C "--with-readline-dir=$HOME/.rvm/usr" 

This of course assumes that you installed rvm as yourself. Change accordingly...

Sign up to request clarification or add additional context in comments.

Comments

3

This is an issue with readline. Try compiling readline yourself from source:

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 

Source

Comments

0

I have been running into issues on 1.9.3 on Snow Leopard, too. My make.log looks like this:

[2011-11-06 16:22:52] make CC = /usr/bin/gcc-4.2 LD = ld LDSHARED = /usr/bin/gcc-4.2 -dynamiclib CFLAGS = -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=shorten-64-to-32 -Werror=implicit-function-declaration -fno-common -pipe XCFLAGS = -include ruby/config.h -include ruby/missing.h -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -I. -I.ext/include/x86_64-darwin10.8.0 -I./include -I. DLDFLAGS = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -Wl,-flat_namespace -install_name /Users/strike/.rvm/rubies/ruby-1.9.3-p0/lib/libruby.1.9.1.dylib -current_version 1.9.1 -compatibility_version 1.9.1 -Wl,-unexported_symbol,_Init_* -Wl,-unexported_symbol,*_threadptr_* -Wl,-u,_objc_msgSend SOLIBS = compiling dmyencoding.c compiling array.c compiling bignum.c compiling dir.c compiling enum.c compiling load.c compiling file.c compiling gc.c gc.c: In function ‘initial_expand_heap’: gc.c:1112: warning: implicit conversion shortens 64-bit value into a 32-bit value compiling hash.c compiling io.c compiling marshal.c compiling numeric.c compiling object.c compiling parse.c compiling process.c compiling re.c compiling ruby.c compiling util.c compiling variable.c compiling debug.c linking miniruby rbconfig.rb unchanged generating enc.mk compiling encoding.c generating prelude.c compiling prelude.c linking static-library libruby.1.9.1-static.a linking shared-library libruby.1.9.1.dylib generating encdb.h encdb.h unchanged making enc make[1]: Nothing to be done for `enc'. making srcs under enc make[1]: Nothing to be done for `srcs'. generating transdb.h transdb.h unchanged making trans make[1]: Nothing to be done for `./enc/trans'. making encs file2lastrev.rb: does not seem to be under a vcs: . make: [.revision.time] Error 1 (ignored) ./revision.h unchanged /bin/sh: line 0: cd: ext/-test-/add_suffix: No such file or directory make[1]: *** [ext/-test-/add_suffix/all] Error 1 make: *** [build-ext] Error 2 

Comments

0

Which version of Xcode are you using - 4.1 or 4.2? There are some issues with 4.2 and Ruby because 4.2 uses LLVM instead of GCC as the main compiler. Some of the information here may help you if you have 4.2. If you have 4.2 but don't mind going back to 4.1 it's possible to download 4.1 from Apple still on their developer's page but it's rather buried.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.