Re: [pygtk] Compiling PyGTK2
well, I got you beat. I could have read those bug reports and never have known it was related at all. "damn newbies..." Ava Arachne Jarvis wrote: [Thomas Leonard - Tue, 21 Jan 2003 05:10:56 AM CST] Actually, it might be a PyGTK problem. Looks like the infamous ref-counting bug ("this object is only referenced by signal handlers, so I'm going to wipe __dict__"): http://bugzilla.gnome.org/show_bug.cgi?id=92955 I feel silly now. I was looking for pygtk/python-gtk in Gnome's bugzilla page, but not gnome-python, so never found pygtk's list of official bugs, so bothered you all earlier. And neglected to read James' GNOME page. Bah. The one link I didn't click. ___ pygtk mailing list [EMAIL PROTECTED] http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/
Re: [pygtk] Compiling PyGTK2
Thanks! I'm definitely making progress, rox edit will run now, though it is still giving me errors. I ran it from a console and tried to use the search feature, it errored out every time with Traceback (most recent call last): File "./EditWindow.py", line 470, in mini_changed self.minibuffer.changed() File "./search.py", line 76, in changed buffer = self.window.buffer AttributeError: Search instance has no attribute 'window' So, I'm gonna go bug them back at rox. One thing I wanted to clarify (besides "what is pygtk.pth, and why do you hate it so?") was about the prefix suggestion: I used --prefix=/usr, but I went back and ran python -v after that and got this response: /usr/lib/python2.2/site.pyc matches /usr/lib/python2.2/site.py so is --prefix=/usr appropriate? or do I need to also reinstall python (please say no...) and will having pygtk installed in a non-standard location cause problems with other Python-based apps than Rox? I ran these tests again: >>> import pygtk >>> pygtk.require('2.0') >>> import gtk >>> gtk.Window >>> and it worked, so I think any remaining problems would be with the rox application alone, no? Really big thanks, I am so happy to know there are such helpful people in the world. -J. Christian Reis wrote: I now officially hate pygtk.pth. On Mon, Jan 20, 2003 at 01:27:32PM -0500, joehill wrote: Then I ran make install as root and found that it had installed to this directory /usr/local/lib/python2.2/site-packages/gtk-2.0 which is one of the directories mentioned by rox support. still, rox edit will not run. What rox support didn't tell you is that the prefix where your package is installed *does* matter, and that /usr and /usr/local are not the same: if the python version you are using is installed to the prefix /usr then you *must* install pygtk to the same prefix. This means, yes, that you need to supply --prefix=/usr to pygtk's configure. A python -v will tell you what prefix is being used by default (just see from where site.py is being loaded). Take care, -- Christian Reis, Senior Engineer, Async Open Source, Brazil. http://async.com.br/~kiko/ | [+55 16] 261 2331 | NMFL ___ pygtk mailing list [EMAIL PROTECTED] http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/ ___ pygtk mailing list [EMAIL PROTECTED] http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/
Re: [pygtk] Compiling PyGTK2
et_default_icon_list: No ArgType for GList* Could not write function window_get_default_icon_list: No ArgType for GList* pes.defs \ --override pango.override \ --prefix pypango pango.defs) > gen-pango.c \ && cp gen-pango.c pango.c \ && rm -f gen-pango.c Could not write method PangoAttrList.get_iterator: No ArgType for PangoAttrIterator* Could not write getter for PangoGlyphString.glyphs: No ArgType for PangoGlyphInfo* Could not write getter for PangoGlyphString.log_clusters: No ArgType for gint* Could not write method PangoLayout.get_line: No ArgType for PangoLayoutLine* Could not write method PangoLayout.get_lines: No ArgType for GSList* Could not write method PangoLayout.get_iter: No ArgType for PangoLayoutIter* Could not write function find_paragraph_boundary: No ArgType for gint* Could not write function get_log_attrs: No ArgType for PangoLogAttr* Could not write function itemize: No ArgType for PangoAttrIterator* Could not write function reorder_items: No ArgType for GList* 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 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 Then I ran make install as root and found that it had installed to this directory /usr/local/lib/python2.2/site-packages/gtk-2.0 which is one of the directories mentioned by rox support. still, rox edit will not run. Thanks to all, J. joehill wrote: Christian Reis wrote: On Fri, Jan 03, 2003 at 06:03:45PM -0500, joehill wrote: Many thanks for the reply. There were several errors, but one major one which was similar to what appeared in the output of the ./configure command. I have pasted in the smaller ones first. This is the problem that is stopping you from compiling it. It *seems* to be a problem with xft and freetype. Is freetype installed? Why wasn't libpangoxft linked against it properly, as it should have been? Did you compile it yourself? Thanks very much, that was it exactly. I was barking up the wrong tree, I thought it just didn't like my install of GTK+. I had installed some custom versions of freetype and xft. Once I upgraded my pango packages (libpango, libpango-devel, and of course pango) from the same source, all was well. I got the custom packages from Texstar, who seems to be quite the wizard with rpms. Thanks for your help, I'll now go ahead and install the software that needed this pygtk2 package...as soon as I remember what that was. I tell ya, there's not a lot of things as fun as watching source code compile. configure:8827: checking for GTK+ - version >= 2.0.0 configure:8943: gcc -o conftest -g -O2 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/X11R6/include -I/usr/include/freety$ /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Seek_Stream' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Get_Short' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Forget_Frame' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Access_Frame' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Get_Long' collect2: ld returned 1 exit status configure:8946: $? = 1 configure: program exited with status 1 configure: failed program was: | #line 8862 "configure" | /* confdefs.h. */ | #include | #include | #include | | int | main () | { | int major, minor, micro; | char *tmp_version; | | system ("touch conf.gtktest"); | | /* HP/UX 9 (%@#!) writes to sscanf strings */ | tmp_version = g_strdup("2.0.0"); | if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { | printf("%s, bad version string\n", "2.0.0"); | exit(1); |} | | if ((gtk_major_version != 2) || | (gtk_minor_version != 0) || | (gtk_micro_version != 6)) | { | printf("\n*** 'pkg-config --modversion gtk+-2.0' returned %d.%d.%d, but GTK+ (%d.%d.%d)\n", | 2, 0, 6, | gtk_major_version, gtk_minor_version, gtk_micro_version); |
Re: [pygtk] Compiling PyGTK2
Christian Reis wrote: On Fri, Jan 03, 2003 at 06:03:45PM -0500, joehill wrote: Many thanks for the reply. There were several errors, but one major one which was similar to what appeared in the output of the ./configure command. I have pasted in the smaller ones first. This is the problem that is stopping you from compiling it. It *seems* to be a problem with xft and freetype. Is freetype installed? Why wasn't libpangoxft linked against it properly, as it should have been? Did you compile it yourself? Thanks very much, that was it exactly. I was barking up the wrong tree, I thought it just didn't like my install of GTK+. I had installed some custom versions of freetype and xft. Once I upgraded my pango packages (libpango, libpango-devel, and of course pango) from the same source, all was well. I got the custom packages from Texstar, who seems to be quite the wizard with rpms. Thanks for your help, I'll now go ahead and install the software that needed this pygtk2 package...as soon as I remember what that was. I tell ya, there's not a lot of things as fun as watching source code compile. configure:8827: checking for GTK+ - version >= 2.0.0 configure:8943: gcc -o conftest -g -O2 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/X11R6/include -I/usr/include/freety$ /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Seek_Stream' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Get_Short' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Forget_Frame' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Access_Frame' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Get_Long' collect2: ld returned 1 exit status configure:8946: $? = 1 configure: program exited with status 1 configure: failed program was: | #line 8862 "configure" | /* confdefs.h. */ | #include | #include | #include | | int | main () | { | int major, minor, micro; | char *tmp_version; | | system ("touch conf.gtktest"); | | /* HP/UX 9 (%@#!) writes to sscanf strings */ | tmp_version = g_strdup("2.0.0"); | if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { | printf("%s, bad version string\n", "2.0.0"); | exit(1); |} | | if ((gtk_major_version != 2) || | (gtk_minor_version != 0) || | (gtk_micro_version != 6)) | { | printf("\n*** 'pkg-config --modversion gtk+-2.0' returned %d.%d.%d, but GTK+ (%d.%d.%d)\n", | 2, 0, 6, | gtk_major_version, gtk_minor_version, gtk_micro_version); | printf ("*** was found! If pkg-config was correct, then it is best\n"); | printf ("*** to remove the old version of GTK+. You may also be able to fix the error\n"); | printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n"); | printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n"); | printf("*** required on your system.\n"); | printf("*** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH\n"); | printf("*** to point to the correct configuration files\n"); | } | else if ((gtk_major_version != GTK_MAJOR_VERSION) || | (gtk_minor_version != GTK_MINOR_VERSION) || |(gtk_micro_version != GTK_MICRO_VERSION)) | { | printf("*** GTK+ header files (version %d.%d.%d) do not match\n", |GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION); | printf("*** library (version %d.%d.%d)\n", |gtk_major_version, gtk_minor_version, gtk_micro_version); | } | else | { | if ((gtk_major_version > major) || | ((gtk_major_version == major) && (gtk_minor_version > minor)) || | ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro))) | { | return 0; |} | else | { | printf("\n*** An old version of GTK+ (%d.%d.%d) was found.\n", |gtk_major_version, gtk_minor_version, gtk_micro_version); | printf("*** You need a version of GTK+ newer than %d.%d.%d. The latest version of\n", | major, minor, micro); | printf("*** GTK+ is always available from ftp://ftp.gtk.org.\n";); | printf("***\n"); | printf("*** If you have already installed a sufficiently new version, this error\n"); | printf("*** probably means that the
[pygtk] a test
I have added the domain daa.com.au to the list of domains in Mozilla that should receive only plain text mail (after quite rightly being upbraided for my lack of consideration). I am sorry for the offtopic post, I am just making sure I don't cause more headaches. If this is still appearing as formatted/html, let me know and I will not post again until I get this sorted. Thank you for your patience in this matter, ;) ___ pygtk mailing list [EMAIL PROTECTED] http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/
Re: [pygtk] Compiling PyGTK2
* to point to the correct configuration files\n"); | } | else if ((gtk_major_version != GTK_MAJOR_VERSION) || | (gtk_minor_version != GTK_MINOR_VERSION) || |(gtk_micro_version != GTK_MICRO_VERSION)) | { | printf("*** GTK+ header files (version %d.%d.%d) do not match\n", |GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION); | printf("*** library (version %d.%d.%d)\n", |gtk_major_version, gtk_minor_version, gtk_micro_version); | } | else | { | if ((gtk_major_version > major) || | ((gtk_major_version == major) && (gtk_minor_version > minor)) || | ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro))) | { | return 0; |} | else | { | printf("\n*** An old version of GTK+ (%d.%d.%d) was found.\n", |gtk_major_version, gtk_minor_version, gtk_micro_version); | printf("*** You need a version of GTK+ newer than %d.%d.%d. The latest version of\n", | major, minor, micro); | printf("*** GTK+ is always available from ftp://ftp.gtk.org.\n";); | printf("***\n"); | printf("*** If you have already installed a sufficiently new version, this error\n"); | printf("*** probably means that the wrong copy of the pkg-config shell script is\n"); | printf("*** being found. The easiest way to fix this is to remove the old version\n"); | printf("*** of GTK+, but you can also set the PKG_CONFIG environment to point to the\n"); | printf("*** correct copy of pkg-config. (In this case, you will have to\n"); | printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n"); | printf("*** so that the correct libraries are found at run-time))\n"); | } | } | return 1; | } | configure:8973: result: no configure:9007: gcc -o conftest -g -O2 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/X11R6/include -I/usr/include/freety$ /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Seek_Stream' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Get_Short' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Forget_Frame' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Access_Frame' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Get_Long' collect2: ld returned 1 exit status configure:9010: $? = 1 configure: failed program was: | #line 8987 "configure" | /* confdefs.h. */ | #include | #include | | int | main () | { | return ((gtk_major_version) || (gtk_minor_version) || (gtk_micro_version)); | ; | return 0; | } configure:9041: error: maybe you want the gtk-gnome-1-2 branch? Christian Reis wrote: On Wed, Jan 01, 2003 at 06:23:33PM -0500, joehill wrote: I read through the config.log file as suggested, but I couldn't see anything there that was helpful, at least at my level of understanding. I would be more than happy to post the contents of that file. config.log will contain the error that the compilation of the gtk test application generated, and it's helpful to understand what is wrong. Can you find it? Take care, -- Christian Reis, Senior Engineer, Async Open Source, Brazil. http://async.com.br/~kiko/ | [+55 16] 261 2331 | NMFL ___ pygtk mailing list [EMAIL PROTECTED] http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/ ___ pygtk mailing list [EMAIL PROTECTED] http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/
Re: [pygtk] Compiling PyGTK2
to point to the correct configuration files\n"); | } | else if ((gtk_major_version != GTK_MAJOR_VERSION) || | (gtk_minor_version != GTK_MINOR_VERSION) || | (gtk_micro_version != GTK_MICRO_VERSION)) | { | printf("*** GTK+ header files (version %d.%d.%d) do not match\n", | GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION); | printf("*** library (version %d.%d.%d)\n", | gtk_major_version, gtk_minor_version, gtk_micro_version); | } | else | { | if ((gtk_major_version > major) || | ((gtk_major_version == major) && (gtk_minor_version > minor)) || | ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro))) | { | return 0; | } | else | { | printf("\n*** An old version of GTK+ (%d.%d.%d) was found.\n", | gtk_major_version, gtk_minor_version, gtk_micro_version); | printf("*** You need a version of GTK+ newer than %d.%d.%d. The latest version of\n", | major, minor, micro); | printf("*** GTK+ is always available from ftp://ftp.gtk.org.\n"); | printf("***\n"); | printf("*** If you have already installed a sufficiently new version, this error\n"); | printf("*** probably means that the wrong copy of the pkg-config shell script is\n"); | printf("*** being found. The easiest way to fix this is to remove the old version\n"); | printf("*** of GTK+, but you can also set the PKG_CONFIG environment to point to the\n"); | printf("*** correct copy of pkg-config. (In this case, you will have to\n"); | printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n"); | printf("*** so that the correct libraries are found at run-time))\n"); | } | } | return 1; | } | configure:8973: result: no configure:9007: gcc -o conftest -g -O2 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/X11R6/include -I/usr/include/freety$ /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Seek_Stream' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Get_Short' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Forget_Frame' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Access_Frame' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2/../../../libpangoxft-1.0.so: undefined reference to `FT_Get_Long' collect2: ld returned 1 exit status configure:9010: $? = 1 configure: failed program was: | #line 8987 "configure" | /* confdefs.h. */ | #include | #include | | int | main () | { | return ((gtk_major_version) || (gtk_minor_version) || (gtk_micro_version)); | ; | return 0; | } configure:9041: error: maybe you want the gtk-gnome-1-2 branch? Christian Reis wrote: On Wed, Jan 01, 2003 at 06:23:33PM -0500, joehill wrote: I read through the config.log file as suggested, but I couldn't see anything there that was helpful, at least at my level of understanding. I would be more than happy to post the contents of that file. config.log will contain the error that the compilation of the gtk test application generated, and it's helpful to understand what is wrong. Can you find it? Take care, -- Christian Reis, Senior Engineer, Async Open Source, Brazil. http://async.com.br/~kiko/ | [+55 16] 261 2331 | NMFL ___ pygtk mailing list [EMAIL PROTECTED] http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/ ___ pygtk mailing list [EMAIL PROTECTED] http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/
[pygtk] Compiling PyGTK2
I am trying to compile Rox Edit, but I ran into the should-have-read-the-whole-page error about having pygtk2: The pygtk2 package (1.99.13 or later) must be installed to use this program: http://rox.sourceforge.net/rox_lib.php3 Traceback (most recent call last): File "./AppRun", line 6, in ? import rox File "/usr/lib/ROX-Lib2/python/rox/__init__.py", line 53, in ? assert g.Window # Ensure not 1.2 bindings AttributeError: 'module' object has no attribute 'Window' Okay, so I grabbed the pygtk source and promptly decompressed and ran ./configure. This was the output: checking for GTK+ - version >= 2.0.0... no *** Could not run GTK+ test program, checking why... *** The test program failed to compile or link. See the file config.log for the *** exact error that occured. This usually means GTK+ is incorrectly installed. configure: error: maybe you want the gtk-gnome-1-2 branch? I have GTK+ 2.0 installed, as well as the libgtk+ 2.0 and libgtk+ 2.0 devel packages, so I am not sure where to go with this. I read through the config.log file as suggested, but I couldn't see anything there that was helpful, at least at my level of understanding. I would be more than happy to post the contents of that file. Any help appreciated greatly. Cheers! ___ pygtk mailing list [EMAIL PROTECTED] http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/