can't install fontconfig

Ryan Schmidt ryandesign at macports.org
Sun Dec 9 09:13:37 PST 2007


On Dec 9, 2007, at 10:42, Tom McDonough wrote:

> I'm trying to install ImageMagick through MacPorts but I can't get  
> beyond fontconfig.  Following the advice on your material, I  
> upgraded to Xcode 2.5 but that did not help.  I'm running 10.4.10.
>
> Here is the output:
>
> --->  Building fontconfig with target all
> Error: Target org.macports.build returned: shell command " cd "/opt/ 
> local/var/macports/build/ 
> _opt_local_var_macports_sources_rsync.macports.org_release_ports_graph 
> ics_fontconfig/work/fontconfig-2.5.0" && make all " returned error 2
> Command output: fcaliastail.h:520:2: error: #endif without #if
> fcaliastail.h:522: error: only weak aliases are supported in this  
> configuration
> fcaliastail.h:523:2: error: #endif without #if
> fcaliastail.h:525: error: only weak aliases are supported in this  
> configuration
>
> etc., etc.
>
> fcaliastail.h:553:2: error: #endif without #if
> fcaliastail.h:555: error: only weak aliases are supported in this  
> configuration
> fcaliastail.h:556:2: error: #endif without #if
> fcaliastail.h:557:2: error: #endif without #if
> make[3]: *** [fcatomic.lo] Error 1
> make[2]: *** [all] Error 2
> make[1]: *** [all-recursive] Error 1
> make: *** [all] Error 2

We had another report of that almost a year ago:

http://lists.macosforge.org/pipermail/macports-users/2007-January/ 
001341.html

There wasn't a resolution that was satisfactory to me, and at the  
time I figured it might have been due to the reporter running  
Panther. But you're running Tiger, like me, so Panther can't be the  
problem.


There's one other result for this error message on Google now, from  
just a week and a half ago:

http://www.ghostwheel.com/merlin/Personal/notes/2007/11/28/os-x-unix- 
and-dont-you-forget-it/

It suggests that fontconfig's build process is trying to run the  
"head" command (used for getting the first few lines of something)  
but is instead finding the "HEAD" command (part of libwww-perl, which  
retrieves the headers of a web page). Since the Mac's HFS+ filesystem  
is case-insensitive, it treats these different scripts the same. Have  
you installed libwww-perl through MacPorts (port name: p5-libwww- 
perl), or perhaps manually e.g. using CPAN? Use "which head" to see  
which head program is being used, and then prod it for some more  
information. On my system, "which head" produces "/usr/bin/head" and  
"file /usr/bin/head" says this:

/usr/bin/head: Mach-O universal binary with 2 architectures
/usr/bin/head (for architecture i386):  Mach-O executable i386
/usr/bin/head (for architecture ppc):   Mach-O executable ppc

This is what I expected: it's a universal binary, as it should be on  
an Intel Mac. (If you have a PowerPC Mac, it should just be a ppc  
executable.) If however it is reported to be a text file, then you  
have a problem:

- If "which head" says it's in /usr/bin and it's a text file, then  
you have the problem that you have manually installed libwww-perl and  
it has overwritten your system's "head" command with its own "HEAD"  
script, and you will need to restore the OS's "head" command from  
your system DVD. I remember this very thing happening to me in the  
early days of Mac OS X, back when I was still using Perl. :-)

- If "which head" says it's in some other path and it's a text file,  
then you may need to remove that path from your PATH variable. But I  
don't think that's it, because MacPorts shouldn't be looking at your  
PATH during installations anyway.




More information about the macports-users mailing list