ruby / tk

Tk interface module using tcltklib
Other
118 stars 22 forks source link

bwidget example error #46

Closed wf5w closed 2 years ago

wf5w commented 2 years ago

running bwidget example error:

TkPackage can't find package BWidget (RuntimeError)

jeremyevans commented 2 years ago

I get the same error, but I think the reason is that the BWidget tk package is not installed. Maybe you need to install it?: https://wiki.tcl-lang.org/page/BWidget

wf5w commented 2 years ago

Well I see it the code in the directoryBut it is in the /var directory --Sent from my Android phone with GMX Mail. Please excuse my brevity.On 8/30/22, 6:44 PM Jeremy Evans @.***> wrote:

I get the same error, but I think the reason is that the BWidget tk package is not installed. Maybe you need to install it?: https://wiki.tcl-lang.org/page/BWidget —Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

jeremyevans commented 2 years ago

If you can get the BWidget package working using tcl/tk, but cannot get it working with ruby-tk, it may be a bug in ruby-tk. In that case, please post a tcl/tk example that works for you.

If you cannot get the BWidget package working using tcl/tk, it's probably a tk issue, and nothing ruby-tk can do will fix things.

wf5w commented 2 years ago

the $LOAD_PATH variable contains this just before the fail: ["/var/lib/gems/2.7.0/gems/tk-0.4.0/lib", "/var/lib/gems/2.7.0/extensions/x86_64-linux/2.7.0/tk-0.4.0", "/usr/local/lib/site_ruby/2.7.0", "/usr/local/lib/x86_64-linux-gnu/site_ruby", "/usr/local/lib/site_ruby", "/usr/lib/ruby/vendor_ruby/2.7.0", "/usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/2.7.0", "/usr/lib/ruby/vendor_ruby", "/usr/lib/ruby/2.7.0", "/usr/lib/x86_64-linux-gnu/ruby/2.7.0"]

Now the place where bwidget.rb is located is: /var/lib/gems/2.7.0/gems/tk-0.4.0/lib/tkextlib/bwidget.rb

Could it be that the directory is not in the $LOAD_PATH is that it can't resolve where it is?

jeremyevans commented 2 years ago

If you read the backtrace, you can see that lib/tkextlib/bwidget.rb is being loaded. The issue is it tries to load the tk BWidget package. That fails.

As I said, please try to get BWidget working using tcl/tk. If you can get it working with tcl/tk and not ruby-tk, then post how you got it working with tcl/tk and I can take a look. My assumption now is you don't have the tcl/tk BWidget package installed, so nothing you do in ruby-tk will make BWidget work.

wf5w commented 2 years ago

ok. I finally got what you said.

I did a apt-cache search for bwidget and found that indeed there is a package named that. I installed it, and everything is fine!

Thanks. Sometimes it takes a little prodding for this 73 year old to finally get it!

Jerry