[pygtk] Question about building PyGTK 2.8.6 on Linux

Tom Williams tomdkat at comcast.net
Thu Jun 1 21:56:02 WST 2006


Tom Williams wrote:
> Hi!  I'm trying to build PyGTK 2.8.6 on Linux (Slackware 8-based 
> system w/ custom mods) and even though it builds, I don't think it's 
> building correctly.
> During the build, I get messages like this:
>
> ---------START---------------
>
> make[2]: Leaving directory `/home/tom/build/pygtk-2.8.6/gobject'
> Making all in .
> make[2]: Entering directory `/home/tom/build/pygtk-2.8.6'
> if /bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. 
> -I/usr/include/python2.4 -pthread -I/opt/gnome/include/glib-2.0 
> -I/opt/gnome/lib/glib-2.0/include   -I./gobject    
> -I/usr/include/atk-1.0 -I/opt/gnome/include/glib-2.0 
> -I/opt/gnome/lib/glib-2.0/include   -g -O2 -Wall -std=c9x 
> -fno-strict-aliasing -MT atk_la-atkmodule.lo -MD -MP -MF 
> ".deps/atk_la-atkmodule.Tpo" -c -o atk_la-atkmodule.lo `test -f 
> 'atkmodule.c' || echo './'`atkmodule.c; \
> then mv -f ".deps/atk_la-atkmodule.Tpo" ".deps/atk_la-atkmodule.Plo"; 
> else rm -f ".deps/atk_la-atkmodule.Tpo"; exit 1; fi
> mkdir .libs
> gcc -DHAVE_CONFIG_H -I. -I. -I. -I/usr/include/python2.4 -pthread 
> -I/opt/gnome/include/glib-2.0 -I/opt/gnome/lib/glib-2.0/include 
> -I./gobject -I/usr/include/atk-1.0 -I/opt/gnome/include/glib-2.0 
> -I/opt/gnome/lib/glib-2.0/include -g -O2 -Wall -std=c9x 
> -fno-strict-aliasing -MT atk_la-atkmodule.lo -MD -MP -MF 
> .deps/atk_la-atkmodule.Tpo -c atkmodule.c  -fPIC -DPIC -o 
> .libs/atk_la-atkmodule.o
> (cd .\
> && /usr/bin/python codegen/codegen.py \
>    --register pango-types.defs \
>    --register atk-types.defs \
>    --override atk.override \
>    --prefix pyatk atk.defs) > gen-atk.c \
> && cp gen-atk.c atk.c \
> && rm -f gen-atk.c
> Could not write method AtkObject.connect_property_change_handler: No 
> ArgType for 'AtkPropertyChangeHandler*'
> Could not write method AtkObject.notify_state_change: No ArgType for 
> 'AtkState'
> Warning: generating old-style constructor for atk_no_op_object_new
> Could not write method AtkRelation.get_target: No ArgType for 
> 'GPtrArray*'
> Could not write method AtkStateSet.add_states: No ArgType for 
> 'AtkStateType*'
> Could not write method AtkStateSet.contains_states: No ArgType for 
> 'AtkStateType*'
> Could not write function add_focus_tracker: No ArgType for 
> 'AtkEventListener'
> Could not write function focus_tracker_init: No ArgType for 
> 'AtkEventListenerInit'
> Could not write function add_global_event_listener: No ArgType for 
> 'GSignalEmissionHook'
> Could not write function add_key_event_listener: No ArgType for 
> 'AtkKeySnoopFunc'
> Warning: Constructor for AtkNoOpObject needs to be updated to new API
>         See http://live.gnome.org/PyGTK_2fWhatsNew28#update-constructors
> Warning: Constructor for AtkRelation needs to be updated to new API
>         See http://live.gnome.org/PyGTK_2fWhatsNew28#update-constructors
> ***INFO*** The coverage of global functions is 77.78% (14/18)
> ***INFO*** The coverage of methods is 89.58% (43/48)
> ***INFO*** There are no declared virtual proxies.
> ***INFO*** There are no declared virtual accessors.
> ***INFO*** There are no declared interface proxies.
> if /bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. 
> -I/usr/include/python2.4 -pthread -I/opt/gnome/include/glib-2.0 
> -I/opt/gnome/lib/glib-2.0/include   -I./gobject    
> -I/usr/include/atk-1.0 -I/opt/gnome/include/glib-2.0 
> -I/opt/gnome/lib/glib-2.0/include   -g -O2 -Wall -std=c9x 
> -fno-strict-aliasing -MT atk_la-atk.lo -MD -MP -MF 
> ".deps/atk_la-atk.Tpo" -c -o atk_la-atk.lo `test -f 'atk.c' || echo 
> './'`atk.c; \
> then mv -f ".deps/atk_la-atk.Tpo" ".deps/atk_la-atk.Plo"; else rm -f 
> ".deps/atk_la-atk.Tpo"; exit 1; fi
> make[2]: *** [atk_la-atk.lo] Interrupt
> make[1]: *** [all-recursive] Interrupt
> make: *** [all] Interrupt
>
>
> real    4m7.936s
> user    0m57.852s
> sys     0m6.644s
> tom at deathstar:~/build/pygtk-2.8.6$
>
> ----------END------------------
>
> My environment:
>
> Linux 2.6.16.16.kernel
> glibc 2.4
> gcc 4.1.1
> glib 2.8.6
> gtk+ 2.8.18
> atk 1.10.3
> pango 1.10.4
> cairo 1.0.4
> python 2.4.3
>
>
> I tried looking at the URLs referenced above 
> (http://live.gnome.org/PyGTK_2fWhatsNew28#update-constructors), but 
> that section (update-constructors) doesn't exist in the referenced 
> page (looks like a Wiki page).   The messages like that don't prevent 
> the build from stopping (I terminated the above example) and when I 
> run "make check", I get this:
>
> ------------START----------------
>
> Making check in examples
> make[1]: Entering directory `/home/tom/build/pygtk-2.8.6/examples'
> make[1]: Nothing to be done for `check'.
> make[1]: Leaving directory `/home/tom/build/pygtk-2.8.6/examples'
> Making check in tests
> make[1]: Entering directory `/home/tom/build/pygtk-2.8.6/tests'
> make  check-local
> make[2]: Entering directory `/home/tom/build/pygtk-2.8.6/tests'
> WARNING: gtk could not be imported
> WARNING: gtk.gdk could not be imported
> WARNING: gtk.glade could not be imported
> Traceback (most recent call last):
>  File "./runtests.py", line 41, in ?
>    suite.addTest(loader.loadTestsFromName(name))
>  File "/usr/lib/python2.4/unittest.py", line 524, in loadTestsFromName
>    module = __import__('.'.join(parts_copy))
>  File "../tests/test_enum.py", line 7, in ?
>    class PObject(GObject):
>  File "../tests/test_enum.py", line 8, in PObject
>    __gproperties__ = {
> AttributeError: 'NoneType' object has no attribute 'WindowType'
> make[2]: *** [check-local] Error 1
> make[2]: Leaving directory `/home/tom/build/pygtk-2.8.6/tests'
> make[1]: *** [check-am] Error 2
> make[1]: Leaving directory `/home/tom/build/pygtk-2.8.6/tests'
> make: *** [check-recursive] Error 1
> tom at deathstar:~/build/pygtk-2.8.6$
>
> -------------END------------------
>
> Any idea on what might be wrong?
Anyone have any ideas?

Thanks!

Peace...

Tom


More information about the pygtk mailing list