Coder Social home page Coder Social logo

Comments (21)

erisdev avatar erisdev commented on August 23, 2024

It seems that it won't work with any Ruby 1.8.7 because extconf.rb uses Gem::Version but doesn't require 'rubygems' anywhere. πŸ‘Ž to that.

from libv8.

cowboyd avatar cowboyd commented on August 23, 2024

Please check the the latest released version, especially before making negative comments.

https://github.com/fractaloop/libv8/commit/ec4bc3b60e609d44e60c743b27609c569a617418

from libv8.

erisdev avatar erisdev commented on August 23, 2024

@cowboyd Has this actually been pushed to rubygems.org? I had to fix and install manually at the time I wrote that comment because the error was still there. I found this issue while looking for potential solutions. The stack trace for me was the same as the one on the other end of that link.

Call it a negative comment if you like; I was confirming what the problem was and that it wasn't specific to Ubuntu. C:

To clarify my situation a little, because I should have included this information in my initial comment:

  • Mac OS X 10.7.2
  • Ruby 1.8.7-p352
  • RubyGems 1.6.2
  • libv8 3.3.10.4β€”the version that I was getting from rubygems.org at the time

from libv8.

cowboyd avatar cowboyd commented on August 23, 2024

It should be on rubygems.org as of version 3.3.10.4 Also, there should be binary gems for both 64bit and 32bit linux. Please let me know if this is not the case.

While thumbs down certainly does feel negative on reading, I take your word that you did not mean it that way.

Thanks for taking the time to participate in this issue.

from libv8.

erisdev avatar erisdev commented on August 23, 2024

I'll admit my tone was probably a little brash; apologies for that.

I don't have a machine with Linux handy so I'm afraid I can't test the Linux binaries. I think the Mac version targets 10.6 and I'm not sure how to force it to install that one, so it defaults to from-source. :C

The change you pointed out doesn't appear to have been deployed. Trying to install libv8 with an empty GEM_HOME and a cleared cache gives me this:

Fetching: libv8-3.3.10.4.gem (100%)
Building native extensions.  This could take a while...
ERROR:  Error installing libv8:
    ERROR: Failed to build gem native extension.

        /Users/Eris/.rbenv/versions/1.8.7-p352/bin/ruby 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=/Users/Eris/.rbenv/versions/1.8.7-p352/bin/ruby
extconf.rb:13: uninitialized constant Gem (NameError)
Checking for Python...

Gem files will remain installed in /tmp/ruby-sandbox/rubygems/gems/libv8-3.3.10.4 for inspection.
Results logged to /tmp/ruby-sandbox/rubygems/gems/libv8-3.3.10.4/ext/libv8/gem_make.out

When I look at extconf.rb, I'm still seeing the old version:

require 'mkmf'
require 'pathname'

begin
  def crash(str)
    printf("Unable to build libv8: %s\n", str)
    exit 1
  end

  print "Checking for Python..."
  version = `python --version 2>&1`
  crash "Python not found!" if version.split.first != "Python"
  crash "Python 3.x is unsupported by V8!" if Gem::Version.new(version.split.last) >= Gem::Version.new(3)
  crash "Python 2.4+ is required by V8!" if Gem::Version.new(version.split.last) < Gem::Version.new("2.4")
  puts version.split.last
end


Dir.chdir(Pathname(__FILE__).dirname.join('..', '..', 'lib', 'libv8')) do
  puts "Compiling V8..."
  `make`
end

create_makefile('libv8')

from libv8.

cowboyd avatar cowboyd commented on August 23, 2024

Bah, you're right. It looks like that didn't get included into the source release. We'll get binaries for OSX 10.7 and ruby 1.8.7 out there this morning.

In the mean time, you're best bet is to check out the source from master, and run 'rake build' which will package up the fixed source gem for you which you can install from command line.

from libv8.

erisdev avatar erisdev commented on August 23, 2024

Don't worry, I managed to get it working the hard way yesterday. I honestly didn't have much else to do so it wasn't a big deal. C:

Thanks for the tip anyway, though; I'll remember that if I have problems updating in the future. πŸ‘

from libv8.

systemed avatar systemed commented on August 23, 2024

Just encountered this. export RUBYOPT="-r rubygems" is a quick and dirty fix.

from libv8.

erisdev avatar erisdev commented on August 23, 2024

@systemed damn! I wish I had thought of RUBYOPT, because it would have saved me the trouble of looking up how to install gems by hand. Thanks for the snippet!

from libv8.

botandrose avatar botandrose commented on August 23, 2024

Bump. Problem still exhibiting itself for our Mac users.

from libv8.

cowboyd avatar cowboyd commented on August 23, 2024

@botandrose This issue affects Ubuntu users. It should work just fine on Mac. What are you seeing?

from libv8.

botandrose avatar botandrose commented on August 23, 2024

@cowboyd Huh, that's interesting. Our dev, ci, and production machines all run Ubuntu, and none of them have had a problem compiling. Only my designer, on his Mac, has hit this problem. Having him set RUBYOPT to require rubygems works, but is less than ideal. It sounds like @erisdiscord also ran into this issue on a Mac, so I don't think its Ubuntu only. All our machines are running REE 1.8.7, if that helps.

In any case, the 3.3.10.4 version on Rubygems.org doesn't compile without the RUBYOPT workaround. Can you stick a require 'rubygems' in there? Thanks for your time.

from libv8.

dvereber avatar dvereber commented on August 23, 2024

I am on windows and I am having a similar problem. I have opened a new issue (25) which maybe should be closed if this is the same thing.

How do you fix this the hard way?

from libv8.

dvereber avatar dvereber commented on August 23, 2024

export RUBYOPT="-r rubygems" seems to have no effect.

If I have phtyon27 in c/users/david/bin/python.exe then patch fails

if i remove that file, bundle complains about lacking python

export RUBYOPT="-r rubygems seems to have no effect.

from libv8.

cowboyd avatar cowboyd commented on August 23, 2024

@botandrose We had somebody run into this on a 32bit Mac, which, for Ruby 1.8.7 will not work due to a bug in rubygems. I'm curious why it did not select a binary gem to install on your designer's Mac.

The fix you describe is, in fact, on master. so until the next release I would suggest checking out the source and running rake install

https://github.com/fractaloop/libv8/commit/ec4bc3b60e609d44e60c743b27609c569a617418

from libv8.

botandrose avatar botandrose commented on August 23, 2024

Awesome possum. I'll point bundler to that commit, and hopefully my designer will stop complaining. Any eta on next release? Thanks for your time.

from libv8.

dvereber avatar dvereber commented on August 23, 2024

thanks guys! I haven't had a chance to try this yet but I'll report back when I do.

Is there any way to make a paypal donation?

from libv8.

botandrose avatar botandrose commented on August 23, 2024

Any possibility of pushing out a new bugfix release? Every time any one of my designers joins a project, they come running to me with this error.

from libv8.

tboyko avatar tboyko commented on August 23, 2024

For the sake of clarification, what is the cleanest, future-proof way of forcing bundle pack to either include linux-flavored .gem files, or exclude the darwin version .gem files so that OS X development to Ubuntu production capistrano deployments work correctly?

from libv8.

cowboyd avatar cowboyd commented on August 23, 2024

I'm not exactly sure what the best way. It's a bug in bundler

@botandrose As far as pushing out the bugfix release, we've been trying to automate the process because 1) it takes a long time and 2) it is prone to human error, and so we release borking things for everybody else. I suppose we could try and push out a manual release next week.

@tboyko at least that will solve your problem if the linux version is up to date. For the record, if you are running a 64bit linux, then you should not have a problem.

from libv8.

botandrose avatar botandrose commented on August 23, 2024

Ah, I was assuming that the release process was trivial. By all means,
then, work on making it so!
On Mon, Jan 9, 2012 at 9:49 PM, Charles Lowell <
[email protected]

wrote:

I'm not exactly sure what the best way. It's a bug in bundler

@botandrose As far as pushing out the bugfix release, we've been trying to
automate the process because 1) it takes a long time and 2) it is prone to
human error, and so we release borking things for everybody else. I suppose
we could try and push out a manual release next week.


Reply to this email directly or view it on GitHub:
https://github.com/fractaloop/libv8/issues/23#issuecomment-3425647

from libv8.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.