Closed drnic closed 12 years ago
I'm on Lion OS/X
Same problem on FreeBSD.
g++46 -shared -o v8.so v8_value.o v8_locker.o v8_weakref.o v8_script.o v8_template.o v8_object.o v8_callbacks.o rr.o v8_context.o v8_array.o v8_string.o v8ms/libv8-3.3.10.2/lib/libv8/build/v8 -Wl,-R/usr/local/rvm/gems/ruby-1.9.2-p290@rails3/gems/libv8-3.3.10.2/lib/libv8/build/v8 -L. -L/usr/local/rvm/rubies/rucal/rvm/rubies/ruby-1.9.2-p290/lib -lruby -lthr -lrt -lcrypt -lm -lc -lv8 -lpthread /usr/local/bin/ld: error: cannot find -lv8
ldconfig knows v8 though:
357:-lv8.1 => /usr/local/lib/libv8.so.1
but V8 was compiled after Ruby was, if it makes any difference...
I'm getting the exact same output as drnic, but I'm using Ruby 1.9.3 on Lion and attempting to install v0.9.8 of the gem.
There is a binary version of libv8 for Lion now, so this issue should be resolved. To compile therubyracer with clang(which is the default for 1.9.3 on Lion), you will need version 0.9.9
Note that you may need to uninstall libv8
Success!
$ gem uninstall libv8
Successfully uninstalled libv8-3.3.10.2
$ gem install libv8
Fetching: libv8-3.3.10.3-x86_64-darwin-11.gem (100%)
Successfully installed libv8-3.3.10.3-x86_64-darwin-11
1 gem installed
$ gem install therubyracer
Building native extensions. This could take a while...
Successfully installed therubyracer-0.9.9
1 gem installed
This doesn't fix the problem on FreeBSD...
This doesn't fix the problem on Ubuntu,
$ gem install libv8 Fetching: libv8-3.3.10.2-x86-linux.gem (100%) Successfully installed libv8-3.3.10.2-x86-linux 1 gem installed Installing ri documentation for libv8-3.3.10.2-x86-linux... Installing RDoc documentation for libv8-3.3.10.2-x86-linux... $ gem install therubyracer Could not find libv8-3.3.10.3 in any of the sources
Could not find libv8-3.3.10.3 in any of the sources
That version of the gem does not exist.
I have the same problem!!! my OS CentOS how to fix the problem with incorrect version of this gem "libv8-3.3.10.2-x86-linux"?
gem install libv8 -v 3.3.10.3 ERROR: Could not find a valid gem 'libv8' (= 3.3.10.3), here is why: Found libv8 (3.3.10.3), but was for platform x86_64-darwin-11 ERROR: Possible alternatives: libv8
Having the same issue on Snow Leopard, Ruby 1.9.2
don't use libv8 -v 3.3.10.3
It only exists for Lion, and no other platforms.
Instead, please let rubygems automatically select the gem version for you. For example, on Snow Leopard:
legolas:~ cowboyd$ gem install therubyracer
Fetching: libv8-3.3.10.2-x86_64-darwin-10.gem (100%)
Fetching: therubyracer-0.9.9.gem (100%)
Building native extensions. This could take a while...
Successfully installed libv8-3.3.10.2-x86_64-darwin-10
Successfully installed therubyracer-0.9.9
2 gems installed
Installing ri documentation for libv8-3.3.10.2-x86_64-darwin-10...
Installing ri documentation for therubyracer-0.9.9...
Installing RDoc documentation for libv8-3.3.10.2-x86_64-darwin-10...
Installing RDoc documentation for therubyracer-0.9.9...
Running 'bundle install' is throwing 'Could not find libv8-3.3.10.3 in any of the sources'. Manually installing with 'gem install therubyracer' works fine. Which I assume makes this a bundler issue.
the same problem: gem install therubyracer Successfully installed therubyracer-0.9.9 1 gem installed Installing ri documentation for therubyracer-0.9.9... Installing RDoc documentation for therubyracer-0.9.9...
Running 'bundle install' is throwing 'Could not find libv8-3.3.10.3 in any of the sources'
any solutions?
try removing your Gemfile.lock, and rebundling.
If that doesn't work, then it probably is a bundle issue. Blech. Which version of bundler are you guys using, and is it an issue with bundler 1.1?
The obvious workaround would be to explicitly put libv8-3.3.10.2 in your Gemfile.
Tried that. Reset all of Bundlers files as well. It appears to be an issue with bundler getting confused due to the release of 10.3 for darwin-11 only. Changing s.add_dependency "libv8", "~> 3.3.10"
to s.add_dependency "libv8", "3.3.10.2"
in therubyracer.gemspec should fix it. EDIT: Though this would bring back the issue for Lion and V8, did not think that all the way through.
add this lines to yours gemfile gem 'execjs' gem 'therubyracer', :platforms => :ruby
bundle install
and it works on CentOs!!!!
Thank you all!!!
CentOS5, not working.
tried this --> add this lines to yours gemfile gem 'execjs' gem 'therubyracer', :platform => :ruby
bundle install
nope:
bundle install You passed :platform as an option for gem 'therubyracer', but it is invalid.
tried installing libv8 first, correct version of libv8 installs, but still cannot run bundle install.
sh-3.2$ bundle install Updating git://github.com/nathancolgate/s3-swf-upload-plugin Fetching source index for http://rubygems.org/ Could not find libv8-3.3.10.3 in any of the sources
Is this really worth making run on OSX Lion Server when it breaks everyone else? Maybe do a release of libv8-3.3.10.3 for everyone else with no changes???? at least get all the versions the same, then there will be no bundle issues.
sorry, the correct option name looks like
"gem 'therubyracer', :platformS => :ruby" - fixed in me post
I have installed libv8-3.3.10.2 gem install libv8 gem install therubyracer bundle install it works fine, I've just generated new project and working with it)))
@jasonkemm Of course it is not worth it to break everybody for the sake of Lion. Unfortunately, we did not foresee this bug in Bundler. While we consider the best solution, please consider an explicit dependency on libv8-3.3.10.2 to your Gemfile as a workaround.
Specifying gem 'libv8', '3.3.10.2'
in the Gemfile seems to do the trick to get around the error as well.
The Bundler Issue has been reported here https://github.com/carlhuda/bundler/issues/1537
In the meantime we've had to yank the Lion binary so as not to break everybody else's Gemfile's.
Expect an across the board release of 3.3.10.4 tomorrow.
just release libv8-3.3.10.4 across the board, so bundler should be happy.
This doesn't solve the problem on FreeBSD, but it seems to be a libv8 problem, so I'm going to report it there :)
facing the issue that i am not able to execute ROR app OS:Ubuntu Ruby:1.9.3 following is the output when i run bundle
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/usr/bin/ruby1.9.1 extconf.rb
* 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
--without-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=/usr/bin/ruby1.9.1
extconf.rb:15:in <main>': undefined method
include_path' for Libv8:Module (NoMethodError)
Gem files will remain installed in /home/sham/.bundler/tmp/2981/gems/therubyracer-0.9.9 for inspection. Results logged to /home/sham/.bundler/tmp/2981/gems/therubyracer-0.9.9/ext/v8/gem_make.out
An error occurred while installing therubyracer (0.9.9), and Bundler cannot
continue.
Make sure that gem install therubyracer -v '0.9.9'
succeeds before bundling.
Try updating therubyracer
Already did it is not working for me
Uninstalling libv8 allowed therubyracer -v '0.9.9' to compile on my machine: