fontconfig 2.4.2 compile woes

Ryan Schmidt ryandesign at macports.org
Sat Jan 27 23:05:28 PST 2007


On Jan 28, 2007, at 00:05, Ed Ravin wrote:

> On Sat, Jan 27, 2007 at 10:16:11PM -0600, Ryan Schmidt wrote:
> ...
>>> Is there some way to load the older version of fontconfig that  
>>> used to
>>> compile on my Mac?
>>
>> Yes, you can replace the fontconfig portfile with any of the previous
>> versions which can be found here:
>>
>> http://trac.macports.org/projects/macports/log/trunk/dports/graphics/
>> fontconfig/Portfile
>
> Thank you, I rolled back to 2.3.2 (the above Portfile, revision  
> 19139),
> which built fontconfig 2.3.2_2+macosx, and it installed successfully.
>
> But the program I wanted to reinstall, gqview, also wants gtk2,  
> which wants
> Pango, and I got this error message:
>
>  *** Pango not found. Pango built with Cairo support is required
>  *** to build GTK+. See http://www.pango.org for Pango information.
>
>  # port installed pango
>  The following ports are currently installed:
>   pango @1.14.9_0 (active)
>
> This is odd, because port installed Cairo before installing Pango.

Well, it's expected that cairo would install before pango, because  
pango claims cairo as a dependency. Cairo does not make use of pango,  
but if pango detects cairo, it will build the pangocairo library,  
a.k.a. "Pango built with Cairo support."


> So I removed Pango and re-ran the command, and then I got a different
> gtk2 error message (see below).  I'm giving up for tonight.

So hopefully after you removed pango and tried again, it installed  
cairo (if it wasn't there already) and then installed pango with  
cairo support.

> BTW, in case anyone asks, I did run "port selfupdate" a while ago,  
> before
> I started this thread.
>
> Command output: gtkprintbackendcups.c:2317: error: request for member
> `num_groups' in something not a structure or union
> gtkprintbackendcups.c:2318: error: request for member `groups' in  
> something
> not a structure or union
> gtkprintbackendcups.c: At top level:
> gtkprintbackendcups.c:2328: error: parse error before "ppd_file_t"
> gtkprintbackendcups.c:2328: warning: no semicolon at end of struct  
> or union
> gtkprintbackendcups.c: In function `foreach_option_get_settings':
> gtkprintbackendcups.c:2571: error: dereferencing pointer to  
> incomplete type
> gtkprintbackendcups.c: In function
> `cups_printer_get_settings_from_options':
> gtkprintbackendcups.c:2623: error: storage size of `data' isn't known
> gtkprintbackendcups.c: In function `cups_printer_list_papers':
> gtkprintbackendcups.c:2719: error: `ppd_file_t' undeclared (first  
> use in
> this function)
> gtkprintbackendcups.c:2720: error: `ppd_size_t' undeclared (first  
> use in
> this function)
> gtkprintbackendcups.c:2720: error: `size' undeclared (first use in  
> this
> function)
> gtkprintbackendcups.c:2724: error: `ppd_option_t' undeclared (first  
> use in
> this function)
> gtkprintbackendcups.c:2724: error: `option' undeclared (first use  
> in this
> function)
> gtkprintbackendcups.c:2725: error: `ppd_choice_t' undeclared (first  
> use in
> this function)
> gtkprintbackendcups.c:2725: error: `choice' undeclared (first use  
> in this
> function)
> gtkprintbackendcups.c:2735: error: request for member `num_sizes' in
> something not a structure or union
> gtkprintbackendcups.c:2737: error: request for member `sizes' in  
> something
> not a structure or union
> gtkprintbackendcups.c: In function `cups_printer_get_hard_margins':
> gtkprintbackendcups.c:2778: error: `ppd_file_t' undeclared (first  
> use in
> this function)
> gtkprintbackendcups.c:2784: error: request for member  
> `custom_margins' in
> something not a structure or union
> gtkprintbackendcups.c:2785: error: request for member  
> `custom_margins' in
> something not a structure or union
> gtkprintbackendcups.c:2786: error: request for member  
> `custom_margins' in
> something not a structure or union
> gtkprintbackendcups.c:2787: error: request for member  
> `custom_margins' in
> something not a structure or union
> make[4]: *** [gtkprintbackendcups.lo] Error 1
> make[3]: *** [all-recursive] Error 1
> make[2]: *** [all-recursive] Error 1
> make[1]: *** [all-recursive] Error 1
> make: *** [all] Error 2

I don't know what that's about. I see one other occurrence of this  
problem reported:

http://lists.macosforge.org/pipermail/macports-users/2006-September/ 
000022.html

The only solution mentioned in that thread is to use gtk 2.8 instead  
of gtk 2.10. There is a gtk28 port for that purpose. However, other  
ports are likely to depend on the gtk2 port, not the gtk28 port,  
making it rather difficult to install other software that depends on  
gtk2.

Perhaps this is actually a problem with gtk 2.10 (a bug with the  
actual gtk software, I mean, not with the gtk2 MacPorts port). I  
looked in the gtk bug tracker [1] and didn't see this problem  
reported there, so maybe you should report the problem there. Be sure  
to mention what version of gcc and Mac OS X you are using. Perhaps  
this is a problem that they can fix.


> Do I need to start reverting more Portfiles?

You could revert the gtk2 portfile to a port when it was a 2.8  
version, to get you going here. But that's not a long-term solution.  
Long-term, we need to figure out what the problem is and correct the  
current version of these portfiles so others do not experience these  
problems.


[1] http://bugzilla.gnome.org/





More information about the macports-users mailing list