databases/libgda4 fails to build with graphviz installed

Kevin Oberman rkoberman at gmail.com
Fri Mar 22 05:17:59 UTC 2013


On Tue, Mar 19, 2013 at 12:11 PM, Ruslan Makhmatkhanov
<cvs-src at yandex.ru> wrote:
> Kevin Oberman wrote on 19.03.2013 22:59:
>
>> When I attempted building libgda-4.2.12 it failed wit the error:
>> gmake[3]: Entering directory
>> `/usr/ports/databases/libgda4/work/libgda-4.2.12/tools/browser/canvas'
>>    CC     browser-canvas.lo
>> browser-canvas.c: In function 'popup_export_cb':
>> browser-canvas.c:604: warning: null format string
>> browser-canvas.c: In function 'browser_canvas_perform_auto_layout':
>> browser-canvas.c:937: error: incompatible type for argument 2 of 'agopen'
>> browser-canvas.c:937: error: too few arguments to function 'agopen'
>> browser-canvas.c:938: warning: implicit declaration of function
>> 'agnodeattr'
>> browser-canvas.c:971: error: too few arguments to function 'agnode'
>> browser-canvas.c:1015: error: too few arguments to function 'agedge'
>>
>> This path is only taken when graphviz is installed, so a redports  or an
>> -exp build would not have caught it. When I look up the calls that produce
>> the errors, the arguments required have no similarity that I can see to
>> those in browser-canvas code.
>>>
>>> From /usr/local/include/graphviz/cgraph.h:
>>
>> extern Agraph_t *agopen(char *name, Agdesc_t desc, Agdisc_t * disc);
>> While line 937 only passes two arguments. Similar for the remainder.
>>
>> Is this a version incompatibility with the the graphviz API?
>
>
> I second this. Both 4.2.5 and 4.2.12 fail if graphviz is installed. And get
> this if it is not:
> browser-canvas.c:33:10: fatal error: 'gvc.h' file not found

I just did some more work on this as I had another system where it was
building fine. While the code generating the errors was only compiled
when graphviz is installed, it is ALSO only compiled when goocanvas is
installed. While I need graphviz, I don't know why goocanvas was
installed. It had only two packages that depended on it, ruby18-gnome2
and ruby18-goocanvas.

I deleted all three packages and libgda4 now builds fine.

I suspect that either something I had installed used to need
ruby8-goocanvas or I have deleted whatever package caused them to be
installed.

This does not mean the problem is fixed, of course. If built on a
system where goocanvas is required, the issue remains. Clearly the
graphviz ABI has changed at some time and libgda4 no longer will work
with it. If I have some time I may see if I can find a fix, but I'll
admit that now that I don't need it fixed, I may not get far.
-- 
R. Kevin Oberman, Network Engineer
E-mail: rkoberman at gmail.com


More information about the freebsd-gnome mailing list