pycall.rb icon indicating copy to clipboard operation
pycall.rb copied to clipboard

Problems to run PyCall in WSL2

Open Sapiosonic opened this issue 1 year ago • 1 comments

I'm running a Ubuntu 22.04.3 LTS in WSL2 and I am facing the very same issue in two different machines. When I run a ruby script to test if PyCall is working, I've used the example provided in the README. I recieve the same error bellow

<internal:/home/rada/.rbenv/versions/3.2.2/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:136:in require': cannot load such file -- fiddle (LoadError) from internal:/home/rada/.rbenv/versions/3.2.2/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb:136:in require' from /home/rada/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/pycall-1.5.1/lib/pycall/libpython/finder.rb:2:in <top (required)>' from internal:/home/rada/.rbenv/versions/3.2.2/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb:136:in require' from <internal:/home/rada/.rbenv/versions/3.2.2/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:136:in require' from /home/rada/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/pycall-1.5.1/lib/pycall/libpython.rb:3:in <module:LibPython>' from /home/rada/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/pycall-1.5.1/lib/pycall/libpython.rb:2:in module:PyCall' from /home/rada/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/pycall-1.5.1/lib/pycall/libpython.rb:1:in <top (required)>' from <internal:/home/rada/.rbenv/versions/3.2.2/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:136:in require' from internal:/home/rada/.rbenv/versions/3.2.2/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb:136:in require' from /home/rada/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/pycall-1.5.1/lib/pycall.rb:3:in module:PyCall' from /home/rada/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/pycall-1.5.1/lib/pycall.rb:1:in <top (required)>' from <internal:/home/rada/.rbenv/versions/3.2.2/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:141:in require' from internal:/home/rada/.rbenv/versions/3.2.2/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb:141:in rescue in require' from <internal:/home/rada/.rbenv/versions/3.2.2/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:135:in require' from teste.rb:1:in <main>' <internal:/home/rada/.rbenv/versions/3.2.2/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:136:in require': cannot load such file -- pycall (LoadError) from internal:/home/rada/.rbenv/versions/3.2.2/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb:136:in require' from teste.rb:1:in

'`

I've faced the same issue in a Ubuntu Mate 1.26.0. Is there any specific way to run a script

Sapiosonic avatar May 04 '24 02:05 Sapiosonic

Hmm, it's working for me on WSL2 ubuntu. Care to share a sample script so I can see if it's something about what you're running?

inspire22 avatar May 06 '24 05:05 inspire22

@Sapiosonic Please read the error message you've encountered. "cannot load such file -- fiddle (LoadError)" means the Ruby you used couldn't load fiddle standard library. I don't know why your Ruby cannot load fiddle. Maybe some dependencies are broken, or simply your Ruby doesn't have fiddle. But, it clearly isn't due to pycall.

mrkn avatar May 20 '24 14:05 mrkn