Ruby требует, чтобы 'tk' выдает LoadError: нет такого файла для загрузки - tk

Я не могу получить рубинтребовать "тк" успешно. Я использую rvm, ruby 2.0.0, ActiveTcl-8.6 и Ubuntu 12.04 LTS. Я бегалжелание предоставлен ActiveTcl и, кажется, работает.

Я посмотрел на сайте RVMhttp://rvm.io/integration/tk и несколько вопросов StackOverflow, как этотRVM Ruby с установкой TK (OSX).

я пыталсяrvm переустановите 2.0.0 --enable-shared --enable-pthread --with-tk --with-tcl несколько раз на разных версиях ruby безуспешно.

есть идеи?

Когда я запускаю IRB и делаюrequire'tk» Я получаю следующее:

LoadError: cannot load such file -- tk
from /home/brooks/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/brooks/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from (irb):2
from /home/brooks/.rvm/rubies/ruby-2.0.0-p353/bin/irb:12:in `<main>'

Когда это работает, я думаю, вы должны получитьправда вернулся.

Больше я ничего не пробовал, потому что не могу понять, что еще делать. Я изучал, как требуют работы и проверяя путь загрузки сruby -e '$:' я получил

[brooks@ubuntu:~/sites/depot]$ruby -e 'puts $:'
/home/brooks/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0
/home/brooks/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/x86_64-linux
/home/brooks/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby
/home/brooks/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/vendor_ruby/2.0.0
/home/brooks/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/vendor_ruby/2.0.0/x86_64-linux
/home/brooks/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/vendor_ruby
/home/brooks/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0
/home/brooks/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/x86_64-linux

Я думаю, это похоже на то, что вы ожидаете. Извините за форматирование, я новичок в редакторе.

Следуя идее, что это проблема с путями, я обнаружил tk.rb в своих файлах и попробовал следующее в irb:

2.0.0-p353 :003 > require '/home/brooks/.rvm/src/ruby-2.0.0-p353/ext/tk/lib/tk'   
LoadError: cannot load such file -- tcltklib
from /home/brooks/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/brooks/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/brooks/.rvm/src/ruby-2.0.0-p353/ext/tk/lib/tk.rb:6:in `<top (required)>'
from /home/brooks/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/brooks/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from (irb):3
from /home/brooks/.rvm/rubies/ruby-2.0.0-p353/bin/irb:12:in `<main>'

Так что теперь этотребует 'tcltklib' в файле tk.rb, который вызывает проблему. Это, кажется, подтверждает, что есть некоторая проблема с $ PATH или $ load_path. Но поиск файла tcltklib.rb ничего не дает. Есть файл tcltklib.c.

Я попробовал еще несколько вещей. После более тщательного чтения результатов установки ruby через rvm появилось предупреждение о том, что библиотека X11 не установлена и что Tk не будет активен после сборки ruby. я сделалsudo apt-get установить libx11-dev а потомrvm переустановите 2.0.0 --enable-shared --enable-pthread --with-tk --with-tcl очередной раз. На этот раз в IRBтребовать "тк" вызвал дамп ядра. Я попробовал это в другой раз, и это работало. Затем я запустил короткий скрипт ruby, который также используеттребовать "тк", Это также ядро сброшено, но сработало после нескольких попыток. Теперь он ударил или пропустил для обоих, иногда работает, иногда это дампы ядра.

Ответы на вопрос(3)

Ваш ответ на вопрос