cairo install fails (was: Building cairomm (inkscape dependency) fails)

Ryan Schmidt ryandesign at macports.org
Sun Apr 20 13:43:09 PDT 2008


On Apr 20, 2008, at 5:34 AM, sourceforge.rocks at xemaps.com wrote:

> On Apr 18, 2008, at 10:59 AM, "Jason Merrill" wrote:
>
>> I've been trying to get the latest version of inkscape going, and  
>> I've
>> run into some trouble installing cairomm:
>>
>> jmerrill:Frameworks jm843$ sudo port clean cairomm
>> --->  Cleaning cairomm
>> jmerrill:Frameworks jm843$ sudo port install -d cairomm
>> --->  Fetching cairomm
>> --->  Verifying checksum(s) for cairomm
>> --->  Extracting cairomm
>> --->  Applying patches to cairomm
>> --->  Configuring cairomm
>> --->  Building cairomm 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_grap 
>> hics_cairomm/work/cairomm-1.6.0"
>> && make all " returned error 2
>
> 8<-----snip----
>
> I get a similar error when trying to install cairo 1.6.4 in the  
> following environment:
>
>     Mac OS X 10.4.11
>     PowerPC G4
>     Xcode 2.5

[snip]

> /usr/bin/gcc-4.0 -DHAVE_CONFIG_H -I. -I.. -I/opt/local/include -I. - 
> I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/ 
> include -I/opt/local/include/libpng12 -DXTHREADS -I/opt/local/ 
> include -I/usr/X11R6/include -I/usr/X11R6/include -I/opt/local/ 
> include/pixman-1 -Wall -Wextra -Wsign-compare -Werror-implicit- 
> function-declaration -Wpointer-arith -Wwrite-strings -Wstrict- 
> prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested- 
> externs -Wpacked -Wswitch-enum -Wmissing-format-attribute -Wstrict- 
> aliasing=3D2 -Winit-self -Wdeclaration-after-statement -Wold-style- 
> definition -Wno-missing-field-initializers -Wno-unused-parameter - 
> Wno-long-long -Winline -fno-strict-aliasing -O2 -MT libcairo_la- 
> cairo-quartz-surface.lo -MD -MP -MF .deps/libcairo_la-cairo-quartz- 
> surface.Tpo -c cairo-quartz-surface.c -fno-common -DPIC -o .libs/ 
> libcairo_la-cairo-quartz-surface.o
> cairo-quartz-surface.c: In function 'quartz_ensure_symbols':
> cairo-quartz-surface.c:144: error: 'RTLD_DEFAULT' undeclared (first  
> use in this function)
> cairo-quartz-surface.c:144: error: (Each undeclared identifier is  
> reported only once
> cairo-quartz-surface.c:144: error: for each function it appears in.)
> make[2]: *** [libcairo_la-cairo-quartz-surface.lo] Error 1
> make[1]: *** [all-recursive] Error 1
> make: *** [all] Error 2
> Error: Status 1 encountered during processing.


Your error does not seem similar to the one Jason encountered.  
Jason's error was "/System/Library/Frameworks/CoreServices.framework/ 
Frameworks/CarbonCore.framework/Headers/MachineExceptions.h:255:  
error: declaration does not declare anything", was a result of  
running on Leopard, and was fixed by modifying the cairomm Portfile  
to work around the Leopard behavior.

Your error is "cairo-quartz-surface.c:144: error: 'RTLD_DEFAULT'  
undeclared (first use in this function)"

Googling for that, I found this thread:

http://www.zeroc.com/forums/patches/408-patch-build-ice-1-2-0-macos- 
x-10-3-a.html

It suggests that you may have something installed in /usr/local,  
specifically /usr/local/include/dlfcn.h, which is interfering with  
the (in this case cairo) build process.

When using MacPorts, it is recommended not to have anything in /usr/ 
local. What do you have there any why? Can you install it with  
MacPorts instead?

Move /usr/local aside (by renaming it to /usr/local-off for example),  
clean cairo, and try installing again, and it should work.




More information about the macports-users mailing list