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 и делаютребуют»тк» Я получаю следующее:
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 `'
Когда это работает, я думаю, вы должны получитьправда вернулся.
У меня нетЯ пробовал что-нибудь еще, потому что я не могуне понимаю, что еще делать. Я'мы изучали, как требуются работы, и проверяли путь загрузки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 `'
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 `'
Так что теперь этотребоватьtcltklib» в файле tk.rb, который 'вызывает проблему. Это, кажется, подтверждает, что есть некоторая проблема с $ PATH или $ load_path. Но поиск файла tcltklib.rb ничего не дает. Есть файл tcltklib.c.
Я попробовал еще несколько вещей. После более тщательного чтения результатов установки ruby через rvm появилось предупреждение о том, что библиотека X11 не установлена и что Tk не сможетбыть активным после сборки рубина. я сделалsudo apt-get установить libx11-dev а потомrvm переустановите 2.0.0 --enable-shared --enable-pthread --with-tk --with-tcl снова. На этот раз в IRBтребоватьтк» вызвал дамп ядра. Я попробовал это в другой раз, и это работало. Затем я запустил короткий скрипт ruby, который также используеттребоватьтк», Это также ядро сброшено, но сработало после нескольких попыток. Теперь это'Удар или промах для обоих, иногда работает, иногда это дамп ядра.