[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