मैं आरवीएम का उपयोग कर रूबी 1.9.3 स्थापित करने की कोशिश कर रहा हूं। हालांकि, जब मैं टाइप करता हूं:
rvm install 1.9.3
मुझे निम्नलिखित त्रुटि मिलती है:
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.
मैं मैक ओएस एक्स शेर चला रहा हूं और रूबी का मेरा वर्तमान संस्करण 1.9.2 है।
संपादित करें: 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
4 जवाब
यह readline
के साथ एक समस्या है। स्रोत से स्वयं को readline
संकलित करने का प्रयास करें:
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
सरल, अधिक सामान्य समाधान स्पष्ट रूप से आपत्तिजनक पैकेज को स्थापित करना और फिर उस पैकेज के साथ फिर से स्थापित करना है। मेरे मामले में, यह opensl_missing पर निरस्त कर रहा था, इसलिए:
rvm pkg install openssl
rvm install 1.9.3 -C "--with-openssl-dir=$HOME/.rvm/usr"
आपके मामले के लिए, यह शायद है:
rvm pkg install readline
rvm install 1.9.3 -C "--with-readline-dir=$HOME/.rvm/usr"
यह निश्चित रूप से मानता है कि आपने स्वयं के रूप में आरवीएम स्थापित किया है। तदनुसार बदलें ...
मैं 1.9.3 को हिम तेंदुए पर भी मुद्दों में भाग रहा हूं। मेरा मेक.लॉग इस तरह दिखता है:
[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
आप एक्सकोड के किस संस्करण का उपयोग कर रहे हैं - 4.1 या 4.2? 4.2 और रूबी के साथ कुछ समस्याएं हैं क्योंकि 4.2 मुख्य कंपाइलर के रूप में जीसीसी के बजाय एलएलवीएम का उपयोग करता है। कुछ जानकारी यहां< /a> अगर आपके पास 4.2 है तो आपकी मदद कर सकता है। यदि आपके पास 4.2 है, लेकिन 4.1 पर वापस जाने में कोई आपत्ति नहीं है, तो ऐप्पल से 4.1 को अभी भी उनके डेवलपर के पेज पर डाउनलोड करना संभव है, लेकिन यह दफन है।
जुड़े हुए प्रश्न
नए सवाल
rvm
आरवीएम (रूबी संस्करण प्रबंधक) एक कमांड लाइन उपकरण है जो उपयोगकर्ताओं को विभिन्न यूनिक्स जैसी प्रणालियों (जैसे लिनक्स और मैक ओएस एक्स) में आसानी से रत्नों के सेट से कई रूबी वातावरण के साथ स्थापित, प्रबंधित और प्रबंधित करने की अनुमति देता है।