Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gosu depends on libmpg123, libmpg123 depends on MSVC 2015 runtime #405

Closed
Aelxer opened this issue May 27, 2017 · 5 comments
Closed

Gosu depends on libmpg123, libmpg123 depends on MSVC 2015 runtime #405

Aelxer opened this issue May 27, 2017 · 5 comments
Assignees

Comments

@Aelxer
Copy link

Aelxer commented May 27, 2017

I'm rather new to Ruby (that is to say, I'm not very familiar with most of its technical details) and I wanted to try gosu when I found out about it, but while I was able to install the gem without problems (or at least, no problems showed up), I haven't been able to make it work. I tried running gosu-examples and an example from the tutorial but no matter what I do, if it requires gosu I'll get this error:

C:/Ruby23-x64/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require': 126: No se puede encontrar el m¾dulo especificado. - C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/gosu-0.12.0-x64-mingw32/lib64/2.3/gosu.so (LoadError) from C:/Ruby23-x64/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require'
from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/gosu-0.12.0-x64-mingw32/lib/gosu.rb:17:in <top (required)>' from C:/Ruby23-x64/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:127:in require'
from C:/Ruby23-x64/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:127:in rescue in require' from C:/Ruby23-x64/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:40:in require'
from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/gosu-examples-1.0.4/bin/gosu-examples:4:in <top (required)>' from C:/Ruby23-x64/bin/gosu-examples:22:in load'
from C:/Ruby23-x64/bin/gosu-examples:22:in `

'

Most solutions I've found that deal with the problem even tangentially are either really old (and thus deal with older versions of Ruby and gosu) or are similar but not related to gosu and I haven't been able to apply them to it. Any suggestion on what to do is appreciated.

@jlnr
Copy link
Member

jlnr commented May 27, 2017

Hmm. I think I've seen two other reports like this, one on IRC and I can't find the other.

This happens when Ruby loads Gosu, and a DLL that Gosu depends on cannot be found. Are you on Windows 7 or 10?

One thing you can try is this:

  • Copy C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/gosu-0.12.0-x64-mingw32/lib64/2.3/gosu.so up one directory (into lib64) and rename it "gosu.dll"
  • Download the 64-bit version of Dependency Walker: http://www.dependencywalker.com
  • Open gosu.dll in Dependency Walker and report any DLLs that are missing; probably best to post a screenshot.

Some of the missing DLLs are not a problem, they are supplied by Ruby. But maybe you are missing a Visual C++ runtime of some sort.

@Aelxer
Copy link
Author

Aelxer commented May 27, 2017

I'm on Windows 7.
image

I'm hoping I did it right >.<

@jlnr
Copy link
Member

jlnr commented May 27, 2017

Hmmm. I think it's missing VCRUNTIME140.DLL - can you please try installing the MSVC 2015 runtime?

It's supposed to be linked statically, but maybe I messed up when integrating mpg123 in Gosu 0.12.0?

@jlnr
Copy link
Member

jlnr commented May 27, 2017

Yep, looks like it. Thanks for reporting. I'll try to recompile mpg123 so that it doesn't introduce this dependency.

@jlnr jlnr self-assigned this May 27, 2017
@jlnr jlnr changed the title Issue with 'require' Gosu depends on libmpg123, libmpg123 depends on MSVC 2015 runtime May 27, 2017
@jlnr jlnr removed the help wanted label May 27, 2017
@Aelxer
Copy link
Author

Aelxer commented May 27, 2017

It worked! Thank you very much.

@jlnr jlnr closed this as completed in 3486cbc May 28, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants