Ruby GTK дает сбой без отображения (Python в порядке)

кажется, что приложения Ruby GTK не могут работать в неграфической среде... в то время как приложения python могут.

упрощенные примеры (даже без основного цикла gtk), демонстрирующие такое поведение:

gtktest.py:

#! /usr/bin/python
import gtk
print('the end')

gtktest.rb:

#! /usr/bin/ruby
require "gtk2"
puts('the end')

Среда X-окна:

$ ./gtktest.py
the end
$ ./gtktest.rb
the end

не X среда:

$ ./gtktest.py
/usr/lib/pymodules/python2.5/gtk-2.0/gtk/__init__.py:57: GtkWarning: could not open display
  warnings.warn(str(e), _gtk.Warning)
the end

$ ./gtktest.rb
/usr/lib/ruby/1.8/gtk2.rb:12:in `init': Cannot open display:   (Gtk::InitError)
    from /usr/lib/ruby/1.8/gtk2.rb:12
    from ./gtktest.rb:2:in `require'
    from ./gtktest.rb:2

как вы можете видеть, версия python работает успешно с предупреждением, версия ruby ​​сразу же выходит из строя при импорте gtk (версия python работает даже с основным циклом gtk, а терминал VTE выполняет некоторую обработку текста)

кто-нибудь знает о возможности того, что эти приложения ruby ​​gtk работают в не-X?

окружение: debian сжатия, python-gtk2, libgtk2-ruby


person mykhal    schedule 28.05.2010    source источник


Ответы (1)


Да, можно, настройте Xvfb.

person ChristopheD    schedule 28.05.2010
comment
спасибо, это способ, как его взломать. но мне интересно, есть ли способ заставить ruby ​​gtk не зависеть строго от X, так как python gtk не - person mykhal; 07.06.2010