pygtk with directfb without x11

View: New views
6 Messages — Rating Filter:   Alert me  

pygtk with directfb without x11

by sgf42 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

I want to use pygtk which is using the directFB layer instead of x11. Because
memory is limited I want to drop x11 support completely from my ARM
environment.

directFB works nicely already, even a small C gtk test application runs as
expected.

My environment is based on debian lenny armel, and so I downloaded the
pygtk-2.12.1 sources and made them with

./configure --exec-prefix=/root/ekb/pygtk-install --prefix=/root/ekb/pygtk-install --without-x
make
make install

All looks good, but when using it in python it claims to need
libgtk-x11-2.0.so.0

-sh-3.2# export PYTHONPATH=lib/python2.5/site-packages:.:; python
Python 2.5.2 (r252:60911, Jan  5 2009, 02:00:00)
[GCC 4.3.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import pygtk
>>> pygtk.require('2.0')
>>> import gtk
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
 
File "/root/ekb/pygtk-install/lib/python2.5/site-packages/gtk-2.0/gtk/__init__.py",
line 48, in <module>
ImportError: libgtk-x11-2.0.so.0: cannot open shared object file: No such file
or directory

If I provide libgtk-x11-2.0.so.0 it solves this issue and the next x11 based
lib is requested, namely:

libgdk-x11-2.0
libXinerama
libXi
libXrandr
libXcursor

:-(

I took a look into the configure script and even at configure.in and I see

grep -nH -e gtk+-2.0 configure.in
configure.in:210:  PKG_CHECK_MODULES(GTK, gtk+-2.0 >= gtk_required_version,
configure.in:225:  PKG_CHECK_MODULES(GTK210, gtk+-2.0 >= 2.10.0,
configure.in:241:  PKG_CHECK_MODULES(GTK212, gtk+-2.0 >= 2.11.6,

but directfb isn't mentioned at all as an option here, so configure calls

pkg-config --libs gtk+-2.0
-lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0  

instead of

pkg-config --libs gtk+-directfb-2.0
-lgtk-directfb-2.0 -lgdk-directfb-2.0 -ldirectfb -lfusion -ldirect -lpthread -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0  

and as a result I have all libs around x11 instead of the directFB ones
included in pygtk.

So anybody has an advice for me how to get pygtk supporting directfb without
x11 ?

Thank you very much,
Sven
_______________________________________________
pygtk mailing list   pygtk@...
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/

Re: pygtk with directfb without x11

by sgf42 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

nobody who can help me to answer the question, is it possible to use pygtk
with directfb without x11 libs ?

Thanks again,
Sven

On Wednesday 01 July 2009, sgf42@... wrote:

> Hi,
>
> I want to use pygtk which is using the directFB layer instead of x11.
> Because memory is limited I want to drop x11 support completely from my ARM
> environment.
>
> directFB works nicely already, even a small C gtk test application runs as
> expected.
>
> My environment is based on debian lenny armel, and so I downloaded the
> pygtk-2.12.1 sources and made them with
>
> ./configure --exec-prefix=/root/ekb/pygtk-install
> --prefix=/root/ekb/pygtk-install --without-x make
> make install
>
> All looks good, but when using it in python it claims to need
> libgtk-x11-2.0.so.0
>
> -sh-3.2# export PYTHONPATH=lib/python2.5/site-packages:.:; python
> Python 2.5.2 (r252:60911, Jan  5 2009, 02:00:00)
> [GCC 4.3.2] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
>
> >>> import pygtk
> >>> pygtk.require('2.0')
> >>> import gtk
>
> Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
>
> File
> "/root/ekb/pygtk-install/lib/python2.5/site-packages/gtk-2.0/gtk/__init__.p
>y", line 48, in <module>
> ImportError: libgtk-x11-2.0.so.0: cannot open shared object file: No such
> file or directory
>
> If I provide libgtk-x11-2.0.so.0 it solves this issue and the next x11
> based lib is requested, namely:
>
> libgdk-x11-2.0
> libXinerama
> libXi
> libXrandr
> libXcursor
>
> :-(
>
> I took a look into the configure script and even at configure.in and I see
>
> grep -nH -e gtk+-2.0 configure.in
> configure.in:210:  PKG_CHECK_MODULES(GTK, gtk+-2.0 >= gtk_required_version,
> configure.in:225:  PKG_CHECK_MODULES(GTK210, gtk+-2.0 >= 2.10.0,
> configure.in:241:  PKG_CHECK_MODULES(GTK212, gtk+-2.0 >= 2.11.6,
>
> but directfb isn't mentioned at all as an option here, so configure calls
>
> pkg-config --libs gtk+-2.0
> -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0
> -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
>
> instead of
>
> pkg-config --libs gtk+-directfb-2.0
> -lgtk-directfb-2.0 -lgdk-directfb-2.0 -ldirectfb -lfusion -ldirect
> -lpthread -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lpango-1.0
> -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
>
> and as a result I have all libs around x11 instead of the directFB ones
> included in pygtk.
>
> So anybody has an advice for me how to get pygtk supporting directfb
> without x11 ?
>
> Thank you very much,
> Sven
> _______________________________________________
> pygtk mailing list   pygtk@...
> http://www.daa.com.au/mailman/listinfo/pygtk
> Read the PyGTK FAQ: http://faq.pygtk.org/


_______________________________________________
pygtk mailing list   pygtk@...
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/

Re: pygtk with directfb without x11

by A.T.Hofkamp :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

sgf42@... wrote:
> Hi,
>
> nobody who can help me to answer the question, is it possible to use pygtk
> with directfb without x11 libs ?

I have no idea what directfb is, nor do I know anything about GTK or PyGTK
internals, so I cannot make a fair estimate of how difficult it is going to be.


In short, the answer to your question is yes, everything is open source
software. Either it is supported already, or you can extend the software. It
may however not be trivial.


PyGTK is not really relevant to your question. PyGTK is nothing more than a
very thin layer on top of GTK, so if you want to use PyGTK with directfb, you
need a GTK with directfb.
If you have that, building a PyGTK with directfb should be quite easy.

Thus, find out what video backends are supported by GTK, and you know how
non-trivial directfb support is going to be.


Albert
_______________________________________________
pygtk mailing list   pygtk@...
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/

Re: pygtk with directfb without x11

by sgf42 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Albert,

thank you very much for your reply.

Meanwhile I found out, that it's not a good idea to use precompiled packages
from debian if you don't like X11 dependentcies. You have to compile it on
your own. And the description for it is already available here:

http://www.directfb.org/wiki/index.php/Projects:GTK_on_DirectFB

this works great, no X11 dependencies at all anymore!

BUT as usual that's not all...

I got this

ImportError: /usr/gtkdfb/lib/python2.5/site-packages/gtk-2.0/gtk/_gtk.so:
undefined symbol: gdk_keyval_convert_case
>>

which I fixed with the help of this posting

http://www.daa.com.au/pipermail/pygtk/2007-August/014101.html

And now I get this error message:

Python 2.5.2 (r252:60911, Jan  5 2009, 02:00:00)
[GCC 4.3.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import pygtk
>>> pygtk.require('2.0')
>>> import gtk
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/gtkdfb/lib/python2.5/site-packages/gtk-2.0/gtk/__init__.py", line
48, in <module>
    from gtk import _gtk
ImportError: /usr/gtkdfb/lib/python2.5/site-packages/gtk-2.0/gtk/_gtk.so:
undefined symbol: gdk_keymap_have_bidi_layouts
>>>

I tried the same approach as above by adding "gdk_keymap_have_bidi_layouts" to
the ignore section in

pygtk-x.x/gtk/gdk.override

but to no avail...

My setup is at the moment:

Python 2.5.2
pygtk-2.12.1
pygobject-2.14.2
gtk+-2.12.12
libglade-2.6.2
libxml2-2.6.30
pango-1.20.5
cairo-1.6.4

Does anybody can give me a hint how to get rid of this error. And why does
adding it to the ignore section doesn't help here ?

Thank you very much in advance!

Sven

On Monday 06 July 2009, A.T.Hofkamp wrote:

> sgf42@... wrote:
> > Hi,
> >
> > nobody who can help me to answer the question, is it possible to use
> > pygtk with directfb without x11 libs ?
>
> I have no idea what directfb is, nor do I know anything about GTK or PyGTK
> internals, so I cannot make a fair estimate of how difficult it is going to
> be.
>
>
> In short, the answer to your question is yes, everything is open source
> software. Either it is supported already, or you can extend the software.
> It may however not be trivial.
>
>
> PyGTK is not really relevant to your question. PyGTK is nothing more than a
> very thin layer on top of GTK, so if you want to use PyGTK with directfb,
> you need a GTK with directfb.
> If you have that, building a PyGTK with directfb should be quite easy.
>
> Thus, find out what video backends are supported by GTK, and you know how
> non-trivial directfb support is going to be.
>
>
> Albert


_______________________________________________
pygtk mailing list   pygtk@...
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/

Re: pygtk with directfb without x11

by sgf42 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

It seems this problem is already known to gnome:

http://bugzilla.gnome.org/show_bug.cgi?id=525985

But nobody seems to care. What can help here ? Maybe using more recent
sources ? But then the whole environment may have to be changed from lenny to
squeeze...! Don't know if one should/can rely on the "testing" branch of
debian?

Any thoughts?

Thanks
Sven

On Monday 13 July 2009, sgf42@... wrote:

> Hi Albert,
>
> thank you very much for your reply.
>
> Meanwhile I found out, that it's not a good idea to use precompiled
> packages from debian if you don't like X11 dependentcies. You have to
> compile it on your own. And the description for it is already available
> here:
>
> http://www.directfb.org/wiki/index.php/Projects:GTK_on_DirectFB
>
> this works great, no X11 dependencies at all anymore!
>
> BUT as usual that's not all...
>
> I got this
>
> ImportError: /usr/gtkdfb/lib/python2.5/site-packages/gtk-2.0/gtk/_gtk.so:
> undefined symbol: gdk_keyval_convert_case
>
>
> which I fixed with the help of this posting
>
> http://www.daa.com.au/pipermail/pygtk/2007-August/014101.html
>
> And now I get this error message:
>
> Python 2.5.2 (r252:60911, Jan  5 2009, 02:00:00)
> [GCC 4.3.2] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
>
> >>> import pygtk
> >>> pygtk.require('2.0')
> >>> import gtk
>
> Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
>   File "/usr/gtkdfb/lib/python2.5/site-packages/gtk-2.0/gtk/__init__.py",
> line 48, in <module>
>     from gtk import _gtk
> ImportError: /usr/gtkdfb/lib/python2.5/site-packages/gtk-2.0/gtk/_gtk.so:
> undefined symbol: gdk_keymap_have_bidi_layouts
>
>
> I tried the same approach as above by adding "gdk_keymap_have_bidi_layouts"
> to the ignore section in
>
> pygtk-x.x/gtk/gdk.override
>
> but to no avail...
>
> My setup is at the moment:
>
> Python 2.5.2
> pygtk-2.12.1
> pygobject-2.14.2
> gtk+-2.12.12
> libglade-2.6.2
> libxml2-2.6.30
> pango-1.20.5
> cairo-1.6.4
>
> Does anybody can give me a hint how to get rid of this error. And why does
> adding it to the ignore section doesn't help here ?
>
> Thank you very much in advance!
>
> Sven
>
> On Monday 06 July 2009, A.T.Hofkamp wrote:
> > sgf42@... wrote:
> > > Hi,
> > >
> > > nobody who can help me to answer the question, is it possible to use
> > > pygtk with directfb without x11 libs ?
> >
> > I have no idea what directfb is, nor do I know anything about GTK or
> > PyGTK internals, so I cannot make a fair estimate of how difficult it is
> > going to be.
> >
> >
> > In short, the answer to your question is yes, everything is open source
> > software. Either it is supported already, or you can extend the software.
> > It may however not be trivial.
> >
> >
> > PyGTK is not really relevant to your question. PyGTK is nothing more than
> > a very thin layer on top of GTK, so if you want to use PyGTK with
> > directfb, you need a GTK with directfb.
> > If you have that, building a PyGTK with directfb should be quite easy.
> >
> > Thus, find out what video backends are supported by GTK, and you know how
> > non-trivial directfb support is going to be.
> >
> >
> > Albert
>
> _______________________________________________
> pygtk mailing list   pygtk@...
> http://www.daa.com.au/mailman/listinfo/pygtk
> Read the PyGTK FAQ: http://faq.pygtk.org/


_______________________________________________
pygtk mailing list   pygtk@...
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/

Re: pygtk with directfb without x11

by sgf42 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Just commenting this section out

;; From gdkkeys.h

(define-method have_bidi_layouts
  (of-object "GdkKeymap")
  (c-name "gdk_keymap_have_bidi_layouts")
  (return-type "gboolean")
)

in the file

pygtk-2.12.1/gtk/gdk-2.12.defs

and rebuilding pygtk is doing the job !!!

Regards
Sven

On Tuesday 14 July 2009, sgf42@... wrote:

> It seems this problem is already known to gnome:
>
> http://bugzilla.gnome.org/show_bug.cgi?id=525985
>
> But nobody seems to care. What can help here ? Maybe using more recent
> sources ? But then the whole environment may have to be changed from lenny
> to squeeze...! Don't know if one should/can rely on the "testing" branch of
> debian?
>
> Any thoughts?
>
> Thanks
> Sven
>
> On Monday 13 July 2009, sgf42@... wrote:
> > Hi Albert,
> >
> > thank you very much for your reply.
> >
> > Meanwhile I found out, that it's not a good idea to use precompiled
> > packages from debian if you don't like X11 dependentcies. You have to
> > compile it on your own. And the description for it is already available
> > here:
> >
> > http://www.directfb.org/wiki/index.php/Projects:GTK_on_DirectFB
> >
> > this works great, no X11 dependencies at all anymore!
> >
> > BUT as usual that's not all...
> >
> > I got this
> >
> > ImportError: /usr/gtkdfb/lib/python2.5/site-packages/gtk-2.0/gtk/_gtk.so:
> > undefined symbol: gdk_keyval_convert_case
> >
> >
> > which I fixed with the help of this posting
> >
> > http://www.daa.com.au/pipermail/pygtk/2007-August/014101.html
> >
> > And now I get this error message:
> >
> > Python 2.5.2 (r252:60911, Jan  5 2009, 02:00:00)
> > [GCC 4.3.2] on linux2
> > Type "help", "copyright", "credits" or "license" for more information.
> >
> > >>> import pygtk
> > >>> pygtk.require('2.0')
> > >>> import gtk
> >
> > Traceback (most recent call last):
> >   File "<stdin>", line 1, in <module>
> >   File "/usr/gtkdfb/lib/python2.5/site-packages/gtk-2.0/gtk/__init__.py",
> > line 48, in <module>
> >     from gtk import _gtk
> > ImportError: /usr/gtkdfb/lib/python2.5/site-packages/gtk-2.0/gtk/_gtk.so:
> > undefined symbol: gdk_keymap_have_bidi_layouts
> >
> >
> > I tried the same approach as above by adding
> > "gdk_keymap_have_bidi_layouts" to the ignore section in
> >
> > pygtk-x.x/gtk/gdk.override
> >
> > but to no avail...
> >
> > My setup is at the moment:
> >
> > Python 2.5.2
> > pygtk-2.12.1
> > pygobject-2.14.2
> > gtk+-2.12.12
> > libglade-2.6.2
> > libxml2-2.6.30
> > pango-1.20.5
> > cairo-1.6.4
> >
> > Does anybody can give me a hint how to get rid of this error. And why
> > does adding it to the ignore section doesn't help here ?
> >
> > Thank you very much in advance!
> >
> > Sven
> >
> > On Monday 06 July 2009, A.T.Hofkamp wrote:
> > > sgf42@... wrote:
> > > > Hi,
> > > >
> > > > nobody who can help me to answer the question, is it possible to use
> > > > pygtk with directfb without x11 libs ?
> > >
> > > I have no idea what directfb is, nor do I know anything about GTK or
> > > PyGTK internals, so I cannot make a fair estimate of how difficult it
> > > is going to be.
> > >
> > >
> > > In short, the answer to your question is yes, everything is open source
> > > software. Either it is supported already, or you can extend the
> > > software. It may however not be trivial.
> > >
> > >
> > > PyGTK is not really relevant to your question. PyGTK is nothing more
> > > than a very thin layer on top of GTK, so if you want to use PyGTK with
> > > directfb, you need a GTK with directfb.
> > > If you have that, building a PyGTK with directfb should be quite easy.
> > >
> > > Thus, find out what video backends are supported by GTK, and you know
> > > how non-trivial directfb support is going to be.
> > >
> > >
> > > Albert
> >
> > _______________________________________________
> > pygtk mailing list   pygtk@...
> > http://www.daa.com.au/mailman/listinfo/pygtk
> > Read the PyGTK FAQ: http://faq.pygtk.org/
>
> _______________________________________________
> pygtk mailing list   pygtk@...
> http://www.daa.com.au/mailman/listinfo/pygtk
> Read the PyGTK FAQ: http://faq.pygtk.org/


_______________________________________________
pygtk mailing list   pygtk@...
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/