मैं Mavericks पर निम्नलिखित मणि संस्करण स्थापित करने का प्रयास कर रहा हूं
- libv8 (3.16.14.3)
- उपचारात्मक (0.12.1)
स्पष्ट रूप से चिकित्सीय रत्न libv8 पर निर्भर करता है।
1) स्थापित करना libv8
Libv8 क्या है? मेरे शोध में थोड़ा सा लगता है कि यह Google Chrome द्वारा उपयोग की जाने वाली किसी प्रकार की जावास्क्रिप्ट लाइब्रेरी है?
मुझे इसे स्थापित करने में समस्या हो रही थी, लेकिन इस महान पोस्ट में मेरी त्रुटि और इसे बाईपास करने के तरीके के बारे में एक सुस्पष्ट उत्तर था।
इसलिए मैंने libv8
साथ स्थापित किया
gem install libv8 -- --with-system-v8
यह मेरी समझ है कि यह मणि स्थापित करता है, लेकिन v8 लाइब्रेरी के मेरे स्थानीय सिस्टम इंस्टॉलेशन का उपयोग करता है ... वह संस्करण जो मणि के साथ आता है? किसी भी तरह, यह सफल रहा।
2) थेरैबरिसर स्थापित करना
अगले चरण के दौरान, मुझे therubyracer
मणि स्थापित करने में परेशानी हुई । मुझे यकीन नहीं है कि यह मणि क्या करता है, बस यह कि मैं जिस रेल परियोजना की कोशिश कर रहा हूं, उसकी निर्भरता है bundle install
।
यह मुझे निम्नलिखित त्रुटि देता है:
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
/Users/jeeves.butler/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb
checking for main() in -lpthread... yes
checking for main() in -lobjc... yes
checking for v8.h... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
Provided configuration options:
--with-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/Users/jeeves.butler/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
--with-pthreadlib
--without-pthreadlib
--with-objclib
--without-objclib
--enable-debug
--disable-debug
--with-v8-dir
--without-v8-dir
--with-v8-include
--without-v8-include=${v8-dir}/include
--with-v8-lib
--without-v8-lib=${v8-dir}/lib
/Users/jeeves.butler/.rvm/gems/ruby-1.9.2-p290/gems/libv8-3.16.14.3/ext/libv8/location.rb:50:in
'configure': You have chosen to use the version of V8 found
on your system (Libv8::Location::System::NotFoundError)
and *not* the one that is bundled with the libv8 rubygem. However,
it could not be located. please make sure you have a version of
v8 that is compatible with 3.16.14.3 installed. You may
need to special --with-v8-dir options if it is in a non-standard
location
thanks,
The Mgmt
from /Users/jeeves.butler/.rvm/gems/ruby-1.9.2-p290/gems/libv8-3.16.14.3/lib/libv8.rb:7:in `configure_makefile'
from extconf.rb:32:in `<main>'
extconf failed, exit code 1
Gem files will remain installed in /Users/jeeves.butler/.rvm/gems/ruby-1.9.2-p290/gems/therubyracer-0.12.1 for inspection.
Results logged to /Users/jeeves.butler/.rvm/gems/ruby-1.9.2-p290/extensions/x86_64-darwin-13/1.9.1/therubyracer-0.12.1/gem_make.out
जो मैं इकट्ठा कर सकता हूं, मैंने libv8
अपने स्थानीय V8 पुस्तकालय का उपयोग करने के बजाय जो प्रदान किया गया था , उसे स्थापित करने के लिए चुना libv8
, लेकिन अब वह स्थानीय स्थापना स्थित नहीं हो सकती है।
- अगर मैं वास्तव में V8 स्थापित करता हूं और इसे कैसे पता लगाऊं तो मैं कैसे जांचूं?
- मैंने कुछ निर्दिष्ट झंडे की कोशिश की, उनमें से कोई भी सही स्थापना निर्देशिका के लिए मणि को इंगित नहीं करता था
- यह एक अलग विषय हो सकता है, लेकिन क्या है
extconf.rb
? मैंने इसे कुछ जगहों पर देखा है। और यहgcc
विशिष्ट में संकलक के साथ क्या करने की कोशिश कर रहा है ?
धन्यवाद!!
संपादित करें:
मैंने libv8 की स्थापना रद्द करने और फिर से इंस्टॉल करने के इस समाधान की कोशिश की
brew install
। यह कुछ इसी तरह के सवालों के एक जोड़े में उल्लेख किया गया था। कोई भाग्य नहीं।जैसा कि मैंने यहाँ बताया गया है , और पर्यावरण चर का भी मैंने प्रयास किया
CC
, हालाँकि मुझे नहीं लगता कि इसका कोई प्रभाव है क्योंकि यह पहले से ही मेरे कंपाइलर को उठा रहा था ।CXX
CPP
gcc v4.6