[R-SIG-Mac] R-1.7.1 with gcc-3.3 and --with-x

Stefano Iacus jago at mclink.it
Wed Jul 9 13:32:03 MEST 2003


This should fix the problem:

#ifndef __QUARTZ_DEVICE__
#define __QUARTZ_DEVICE__


#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <Defn.h>
#include <Graphics.h>
#include <Rdevices.h>


#if defined(__APPLE_CC__) && defined(HAVE_AQUA)

modifying the first lines of src/unix/devQuartz.c

Can you please try?

stefano

On Mercoledì, lug 9, 2003, at 00:10 Europe/Rome, Alex Buerkle wrote:

>
> Building R-1.7.1 with gcc-3.3 (and g77 3.3) for X11 also fails,  
> because the Carbon framework is being linked in the build process,  
> even when the aqua device is not requested (--with-x --without-tcltk).
>
> It fails because of a problem in Debugging.h, as mentioned in the  
> other thread on building with aqua.
>
> Why is devQuartz.c being compiled if the Aqua device is not requested  
> (I see it is listed in src/unix/Makefile.in)?  Is this just a matter  
> of the build process needing to evolve to accommodate both X11 and  
> Aqua targets on Darwin?
>
> Details are below.
>
> -Alex Buerkle
>
> ---------------
>
> sudo gcc_select 3.3
> export FPICFLAGS='-fno-common'
> export LDFLAGS='-lcc_dynamic'
> export MACOS_DEPLOYMENT_TARGET=10.2
>
> ./configure --with-blas=-'framework vecLib' --with-lapack --with-x \
> --without-tcltk
> [...]
>
> make
> [...]
> gcc -no-cpp-precomp -I. -I../../src/include -I../../src/include  
> -I/usr/X11R6/include -I/sw/include -I/usr/local/include  
> -DHAVE_CONFIG_H   -g -O2 -c devQuartz.c -o devQuartz.o
> In file included from  
> /System/Library/Frameworks/CoreServices.framework/Frameworks/ 
> CarbonCore.framework/Headers/CarbonCore.h:113,
>                  from  
> /System/Library/Frameworks/CoreServices.framework/Headers/ 
> CoreServices.h:21,
>                  from  
> /System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:20,
>                  from devQuartz.c:42:
> /System/Library/Frameworks/CoreServices.framework/Frameworks/ 
> CarbonCore.framework/Headers/Debugging.h:285:2: #else without #if
> /System/Library/Frameworks/CoreServices.framework/Frameworks/ 
> CarbonCore.framework/Headers/Debugging.h:287:2: #endif without #if
> /System/Library/Frameworks/CoreServices.framework/Frameworks/ 
> CarbonCore.framework/Headers/Debugging.h:301:1: missing binary  
> operator before token "enum"
> devQuartz.c:1156:1: unterminated #if
> make[3]: *** [devQuartz.o] Error 1
> make[2]: *** [R] Error 2
> make[1]: *** [R] Error 1
> make: *** [R] Error 1
>
> -----------------
>
> Commenting out the following lines in configure (the ones pertaining  
> to the Carbon framework) didn't change the build and I get the same  
> error:
>
> line 17792
>     ## <FIXME>
>     ## Needed because currently the Quartz device driver gets linked to
>     ## the main binary.  Change once the driver is modularized.
>     # main_ldflags="-framework Carbon"
>     ## </FIXME>
>
> line 18065
>     ## <FIXME>
>     ## We need '-framework Carbon' because currently the Quartz device
>     ## driver gets linked to the main binary and hence also the R  
> dylib.
>     ## Change once the driver is modularized.
>     separator=""
> 	#test -z "${separator}" && separator=" "
> 	#if test -z "${LIBR_LDFLAGS}"; then
> 	#  LIBR_LDFLAGS="-framework Carbon"
> 	#else
> 	#  LIBR_LDFLAGS="${LIBR_LDFLAGS}${separator}-framework Carbon"
> 	#fi
>     ## </FIXME>
>
> ------------------
>
> Incidentally, the configure option --without-aqua does not function  
> properly at present and instead is equivalent to --with-aqua.
>
> _______________________________________________
> R-SIG-Mac mailing list
> R-SIG-Mac at stat.math.ethz.ch
> https://www.stat.math.ethz.ch/mailman/listinfo/r-sig-mac
>



More information about the R-SIG-Mac mailing list