Can't install ruby-opengl

Discussion in 'Ruby' started by J. D., May 27, 2009.

  1. J. D.

    J. D. Guest

    I receive the following error when trying to install it.

    C:/Ruby/bin/ruby.exe -rubygems
    ruby mkrf_conf.rb
    (in C:/Ruby/lib/ruby/gems/1.8/gems/ruby-opengl-0.60.1)
    call rake --nosearch
    cl -nologo -MD -Zi -O2b2xg- -G6 -DWIN32 -DRUBY_VERSION=186
    -IC:/Ruby/include -IC:/Ruby/lib/ruby/1.8/i386-mswin32
    -IC:/Ruby/lib/ruby/site_ruby/1.8 -I. -c gl-1.0-1.1.c
    (in C:/Ruby/lib/ruby/gems/1.8/gems/ruby-opengl-0.60.1/ext/gl)
    'cl' is not recognized as an internal or external command,
    operable program or batch file.
    rake aborted!
    Command failed with status (1): [cl -nologo -MD -Zi -O2b2xg- -G6
    -DWIN32 ...]

    (See full trace by running task with --trace)
    rake aborted!
    Command failed with status (1): [call rake --nosearch...]

    (See full trace by running task with --trace)


    I've tried manually installing it and automatically installing it - both
    fail. I'm currently using the latest one-click installer version of ruby
    186.27. All other gems on my system are updated and working fine with
    the exception of this one.

    My gems system is up to date.

    I've searched heavily for this topic and all topics found do not contain
    a fix for the issue I'm having.

    Any help would be greatly appreciated.

    J. D., May 27, 2009
    1. Advertisements

  2. J. D.

    Luis Lavena Guest

    To install gems that depends on binary extension, like yours, you need
    a compiler.

    Ruby needs a version specific compiler, the same used to build Ruby,
    which is Visual C 6.0

    Unless you have a license, that compiler is not available.

    I suggest you play with or try out the preview version of the new One-
    Click Installer based on GCC, let you build gems with native
    extensions without these issues.

    Keep in mind that certain gems may not work, and headers and libraries
    to build certain gems are required to successfully build them.

    Luis Lavena, May 27, 2009
    1. Advertisements

  3. J. D.

    J. D. Guest

    Hi Luis,

    Wish I would have known this before I did all the things I just finished

    I figured out that I was missing cl.exe and so I grabbed the latest
    visual studio 2008 express and installed it and then encountered
    problems with path variables.

    So, I updated all of the path variables and went to run the gem install
    and encountered the ..

    MSC Version Mismatch error..

    At which point I looked through the doc notes for opengl and saw that
    the compiler has to be MSC 6.0 (which I believe the latest version I
    have is not compatible).

    So, before I go heads into another session of fix this/fix that.. let me
    make sure I understand what it is you are saying..

    The version I need is no longer available unless I have a license so I
    need to play with the one-click-installer that's based on GCC?

    No other way around it eh?
    J. D., May 27, 2009
  4. J. D.

    J. D. Guest

    I fixed my issue.

    I went directly to:

    .. and downloaded the ruby-opengl-0.60.1-x86-mswin32.gem
    .. ran gem install ruby-opengl-0.60.1-x86-mswin32.gem
    .. And it installed correctly with no issues.

    I looked through your links though and the second one was very well
    written - I especially enjoyed your ideas about user file separation on
    a different partition.

    Good read!
    J. D., May 27, 2009
  5. J. D.

    Luis Lavena Guest

    Well, you can get VC8/9 to build extension for VC6 version of RUby,
    but is not the best approach I'll suggest (if you appreciate your
    mental health).

    GCC based Ruby is the candidate for One-Click Installer, since
    building extensions with 12 years old compiler is kind of obsolete
    (that is VC6).
    Luis Lavena, May 27, 2009
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.