[MacPorts] #41984: gtksourceview2 fails to build

MacPorts noreply at macports.org
Sat Sep 20 14:24:01 PDT 2014


#41984: gtksourceview2 fails to build
-----------------------------+----------------------------
  Reporter:  subscriber@…    |      Owner:  micah.lerner@…
      Type:  defect          |     Status:  new
  Priority:  Normal          |  Milestone:
 Component:  ports           |    Version:  2.2.1
Resolution:                  |   Keywords:
      Port:  gtksourceview2  |
-----------------------------+----------------------------

Comment (by wdc@…):

 I too had the same build failure under MacOS 10.6.  (build log attached.)
 With the help of some folks on IRC, I understand the root cause and offer
 a kludge around the problems.

 1. The errors of the form:

 :info:build /opt/local/bin/glib-mkenums: gtksourceview.h:131: Failed to
 parse `                                      GTK_SOURCE_DRAW_SPACES_TAB
 | \ '

 are caused by a really nasty assignment in an enum in gtksourceview.h
 which chokes glib-mkenums.  The attached file gtksourceview2.h.patch
 demonstrates a kludge to fix this.
 As near as I can tell, the complex r-value in the enum is just more than
 glib-mkenums can cope with.

 2. After that is fixed, however, the build still fails to find the basic
 gtk objects.  The errors look like this:

 :info:build In file included from ../gtksourceview/gtksourceview.h:30,
 :info:build                  from gtksourceview-typebuiltins.h:13,
 :info:build                  from gtksourceview.c:39:
 :info:build ../gtksourceview/gtksourcecompletion.h:60: error: expected
 specifier-qualifier-list before 'GtkObject'
 :info:build gtksourceview.c:268: error: expected ')' before '*' token
 :info:build gtksourceview.c: In function 'gtk_source_view_class_init':

 The root cause of this is some sort of mis-understanding of dependencies
 that happens when installing ige-mac-integration (a dependency listed for
 gtksourceview2) after gtk3 is installed.
 (For example if you've installed gnumeric, it wants gtk3.  gtk3 and gtk2
 are separate and don't want to co-mingle, but when ige-mac-integration
 gets installed, it decides it wants to link against gtk3.  Those includes
 shadow the gtk2 includes needed to successfully build gtksourceview2.

 A kludgy work-around is simply to tell configure.ac not to bother with
 ige-mac-integration.  configure.ac.patch demonstrates the change.

 I've been told that the right long term solution is either to modify
 gtksourceview2 to use gtk-mac-integration instead, or to quit using
 gtksourceview2, since gtk2 is no longer actively supported.

 I leave it to the port maintainers to decide on the best course of action
 going forward, and hope that this information makes that work easier.

-- 
Ticket URL: <https://trac.macports.org/ticket/41984#comment:5>
MacPorts <http://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list