After I successfully ran ./configure, make, make install, I tried to run Rox Edit, but it failed again, still complaining that I did not have pygtk2 installed.
I did this test:
import pygtk
pygtk.require('2.0')
import gtk
gtk.Window
as instructed by a helpful fellow on the Rox mailing list. It failed on the second command with:
>>> pygtk.require('2.0')
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "/usr/lib/python2.2/site-packages/pygtk.py", line 49, in require
assert versions.has_key(version), \
AssertionError: required version '2.0' not found on system
I asked about this on the rox mailing list, and was told that rox would be looking for the required files in:
/usr/local/lib/python2.2/site-packages/gtk-2.0
or
/usr/lib/python2.2/site-packages/gtk-2.0
so I went back to the pygtk2 dir, and did make clean, ./configure, make, and watched the compile. I saw the following errors, but then it seemed to compile successfully, ie. no errors reported at the end.
reeView.set_search_equal_func: No ArgType for GtkTreeViewSearchEqualFunc
Could not write method GtkTreeView.set_destroy_count_func: No ArgType for GtkTreeDestroyCountFunc
Could not write method GtkScrolledWindow.get_policy: No ArgType for GtkPolicyType*
Could not write method GtkMenuItem.toggle_size_request: No ArgType for gint*
Could not write method GtkRadioMenuItem.get_group: No ArgType for GSList*
Could not write method GtkColorSelection.set_color: No ArgType for gdouble*
Could not write method GtkColorSelection.get_color: No ArgType for gdouble*
Could not write method GtkCList.set_compare_func: No ArgType for GtkCListCompareFunc
Could not write method GtkCTree.set_drag_compare_func: No ArgType for GtkCTreeCompareDragFunc
Could not write method GtkWindow.get_frame_dimensions: No ArgType for gint*
Could not write method GtkWindow.set_icon_list: No ArgType for GList*
Could not write method GtkWindow.get_icon_list: No ArgType for GList*
Could not write method GtkDialog.add_buttons: varargs functions not supported
Could not write method GtkFileSelection.get_selections: No ArgType for gchar**
Could not write method GtkTreeModel.get: varargs functions not supported
Could not write method GtkTreeModel.get_valist: No ArgType for va_list
Could not write method GtkTreeModel.rows_reordered: No ArgType for gint*
Could not write function accel_group_from_accel_closure: No ArgType for GClosure*
Could not write function accel_map_lookup_entry: No ArgType for GtkAccelKey*
Could not write function accel_map_foreach: No ArgType for gpointer
Could not write function accel_map_load_scanner: No ArgType for GScanner*
Could not write function accel_map_foreach_unfiltered: No ArgType for gpointer
Could not write function binding_entry_clear: No ArgType for GtkBindingSet*
Could not write function gtk_binding_entry_remove: No ArgType for GtkBindingSet*
Could not write function gtk_binding_entry_add_signall: No ArgType for GtkBindingSet*
Could not write function gtk_binding_parse_binding: No ArgType for GScanner*
Could not write function color_selection_palette_from_string: No ArgType for GdkColor**
Could not write function color_selection_set_change_palette_hook: No ArgType for GtkColorSelectionChangePaletteFunc
Could not write function container_class_find_child_property: No ArgType for GObjectClass*
Could not write function container_class_list_child_properties: No ArgType for GObjectClass*
Could not write function icon_size_lookup: No ArgType for gint*
Could not write function item_factory_popup_data_from_widget: No ArgType for gpointer
Could not write function init_add: No ArgType for GtkFunction
Could not write function get_current_event_state: No ArgType for GdkModifierType*
Could not write function gtk_preview_get_info: No ArgType for GtkPreviewInfo*
Could not write function rc_find_pixmap_in_path: No ArgType for GScanner*
Could not write function rc_scanner_new: No ArgType for GScanner*
Could not write function rc_parse_color: No ArgType for GScanner*
Could not write function rc_parse_state: No ArgType for GScanner*
Could not write function rc_parse_priority: No ArgType for GScanner*
Could not write function rc_property_parse_color: No ArgType for const-GParamSpec*
Could not write function rc_property_parse_enum: No ArgType for const-GParamSpec*
Could not write function rc_property_parse_flags: No ArgType for const-GParamSpec*
Could not write function rc_property_parse_requisition: No ArgType for const-GParamSpec*
Could not write function rc_property_parse_border: No ArgType for const-GParamSpec*
Could not write function stock_add_static: No ArgType for const-GtkStockItem*
Could not write function stock_lookup: No ArgType for GtkStockItem*
Could not write function stock_list_ids: No ArgType for GSList*
Could not write function gtk_tree_row_reference_reordered: No ArgType for gint*
Could not write function window_set_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: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.
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?
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 <gtk/gtk.h>
| #include <stdio.h>
| #include <stdlib.h>
|
| 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 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;
| }
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 mailing list [EMAIL PROTECTED] http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/
