[GRASS-user] troubles installing r.fuzzy.system add-on on Mac OSX (GRASS 6.4.1) + NVIZ compilation error

Guillaume.Duclaux at csiro.au Guillaume.Duclaux at csiro.au
Wed Aug 17 22:22:54 EDT 2011


Thanks for the tip. I'll give a try at modbuild.
Although, Jarek advised me to upgrade to Grass 7.0, which I tried but encountered a known compilation problem with NVIZ (something related to Tk).

GRASS GIS compilation log
-------------------------
Started compilation: Wed 17 Aug 2011 22:50:58 WST
--
Errors in:
/usr/local/src/grass_trunk/visualization/nviz


This seems similar to this post:
http://osgeo-org.1803224.n2.nabble.com/wxnviz-on-mac-osx-grass7-0-td5439863.html

I can't find out the fix for this one in the post. I looked in the macOSX/readme and followed  the TclTk guidance (ie: installed TclTk 8.5 from ActiveState, created the links), but the compilation still fails.

Here is the configure arguments I used:

./configure --with-opengl=aqua --enable-macosx-app --with-wxwidgets=/usr/local/lib/wxPython-unicode-2.8.12.1/bin/wx-config --prefix=/Applications --x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/lib --with-fftw-includes=/usr/local/include/ --with-fftw-libs=/usr/local/lib/ --with-tcltk-includes="/Library/Frameworks/Tcl.framework/Headers /Library/Frameworks/Tk.framework/Headers /Library/Frameworks/Tk.framework/PrivateHeaders" --with-tcltk-libs=/usr/local/lib --with-x --with-python --without-motif --without-glw

and get the following prompt message:

checking host system type... i386-apple-darwin10.8.0
checking for gcc... gcc
checking whether the C compiler (gcc  ) works... yes
checking whether the C compiler (gcc  ) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether gcc accepts -g... yes
checking for Cygwin environment... no
checking for mingw32 environment... no
checking for executable suffix... no
checking for full floating-point support... yes
checking for pwd... /bin/pwd
checking for source directory... /usr/local/src/grass_trunk
checking for build directory... /usr/local/src/grass_trunk
checking for svnversion... /opt/subversion/bin/svnversion
checking for MacOSX App... yes
checking for MacOSX architectures... no
checking for MacOSX SDK... no
checking how to build libraries... shared
checking for additional include dirs...
checking for additional library dirs...
checking for a BSD compatible install... /usr/bin/install -c
checking for flex... flex
checking for yywrap in -lfl... yes
checking for bison... bison -y
checking for ranlib... ranlib
checking for ar... ar
checking for env... env
checking for perl... /opt/local/bin/perl
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for limits.h... yes
checking for termio.h... no
checking for termios.h... yes
checking for unistd.h... yes
checking for values.h... no
checking for f2c.h... no
checking for g2c.h... no
checking for sys/ioctl.h... yes
checking for sys/mtio.h... no
checking for sys/resource.h... yes
checking for sys/time.h... yes
checking for sys/timeb.h... yes
checking for sys/types.h... yes
checking for sys/utsname.h... yes
checking for libintl.h... no
checking for iconv.h... yes
checking for langinfo.h... yes
checking whether time.h and sys/time.h may both be included... yes
checking for off_t... yes
checking for uid_t in sys/types.h... yes
checking return type of signal handlers... void
checking for Cygwin environment... no
checking for ftime... yes
checking for gethostname... yes
checking for gettimeofday... yes
checking for lseek... yes
checking for nice... yes
checking for time... yes
checking for uname... yes
checking for seteuid... yes
checking for setpriority... yes
checking for setreuid... yes
checking for setruid... yes
checking for drand48... yes
checking for putenv... yes
checking for setenv... yes
checking for nanosleep... yes
checking whether setpgrp takes no argument... yes
checking for long long int... yes
checking for W11... no
checking for X... libraries /usr/X11R6/lib, headers /usr/X11R6/include
checking for dnet_ntoa in -ldnet... no
checking for dnet_ntoa in -ldnet_stub... no
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
checking for library containing cuserid... no
checking for xdrmem_create... yes
checking for asprintf... yes
checking for atan... yes
checking for dlsym... yes
checking for iconv... no
checking for iconv in -liconv... yes
checking for socket... yes
checking for location of zlib includes...
checking for zlib.h... yes
checking for location of zlib library...
checking for deflate in -lz... yes
checking for location of External PROJ.4 includes...
checking for proj_api.h... yes
checking External PROJ.4 version... 470
checking for location of External PROJ.4 library...
checking for pj_get_def in -lproj... yes
checking for location of External PROJ.4 data files...
configure: warning: *** External PROJ.4 directory not specified; default will be used
checking for /usr/local/share/proj/epsg... yes
checking for nad2bin... /usr/local/bin/nad2bin
checking whether to use regex... yes
checking for location of regex includes...
checking for regex.h... yes
checking for location of regex library...
checking for regcomp... yes
checking whether to use Readline... no
checking whether to use JPEG... yes
checking for location of JPEG includes...
checking for jpeglib.h... yes
checking for location of JPEG library...
checking for jpeg_start_compress in -ljpeg... yes
checking whether to use GDAL... yes
checking for gdal-config... /Library/Frameworks/GDAL.framework/Programs/gdal-config
rm: conftest.dSYM: is a directory
checking whether to use libLAS... no
checking whether to use GEOS... no
checking whether to use TIFF... yes
checking for location of TIFF includes...
checking for tiffio.h... yes
checking for location of TIFF library...
checking for TIFFOpen in -ltiff... yes
checking whether to use PNG... yes
checking for location of PNG includes...
checking for png.h... yes
checking for location of PNG library...
checking for png_read_image in -lpng... yes
checking whether to use PostgreSQL... no
checking whether to use MySQL... no
checking whether to use SQLite... no
checking whether to use FFMPEG... no
checking whether to use OpenGL... aqua
checking for location of OpenGL framework...
checking for OpenGL/gl.h... yes
checking for OpenGL/glu.h... yes
checking for glBegin... yes
checking for gluBeginCurve... yes
checking whether to use Tcl/Tk... yes
checking for location of Tcl/Tk includes... /Library/Frameworks/Tcl.framework/Headers /Library/Frameworks/Tk.framework/Headers /Library/Frameworks/Tk.framework/PrivateHeaders
checking for tcl.h... yes
checking for tk.h... yes
checking Tcl version... 8.5
checking Tk version... 8.5
checking for location of Tcl/Tk library... /usr/local/lib
checking for Tcl_Init in -ltcl... yes
checking for Tk_MainWindow in -ltk... yes
checking whether to use ODBC... no
checking whether to use FFTW... yes
checking for location of FFTW includes... /usr/local/include/
checking for fftw3.h... yes
checking for location of FFTW library... /usr/local/lib/
checking for fftw_execute in -lfftw3... yes
checking whether to use BLAS... no
checking whether to use LAPACK... no
checking whether to use Cairo... yes
checking for location of cairo includes...
checking for cairo.h... yes
checking for location of cairo library...
checking for cairo linking flags...
checking for cairo_create... yes
checking for cairo_xlib_surface_create_with_xrender_format... yes
checking for cairo_xlib_surface_get_xrender_format... yes
checking whether to use FreeType... yes
checking for location of FreeType includes...
checking for ft2build.h... yes
checking for location of FreeType library...
checking for FT_Init_FreeType in -lfreetype... yes
checking whether to use NLS... no
checking whether to use C++... no
checking whether to use openDWG... no
checking whether to use POSIX threads... no
checking for _LARGEFILE_SOURCE value needed for large files... no
checking for fseeko... yes
checking if system supports Large Files at all... yes
checking whether to use wxWidgets... yes
checking for wx-config... /usr/local/lib/wxPython-unicode-2.8.12.1/bin/wx-config
checking wxWidgets version... 2.8.12
checking for wx/wxprec.h... yes
creating ./config.status
creating include/Make/Platform.make
creating include/Make/Doxyfile_arch_html
creating include/Make/Doxyfile_arch_latex
creating include/version.h
creating grass.pc
creating include/config.h
include/config.h is unchanged
Copying config.status to config.status.i386-apple-darwin10.8.0

GRASS is now configured for:  i386-apple-darwin10.8.0

  Source directory:            /usr/local/src/grass_trunk
  Build directory:             /usr/local/src/grass_trunk
  Installation directory:      ${prefix}/GRASS-7.0.app/Contents/MacOS
  Startup script in directory: ${exec_prefix}/bin
  C compiler:                  gcc -g -O2
  C++ compiler:
  Building shared libraries:   yes
  64bit support:
  OpenGL platform:             Aqua

  MacOSX application:         yes
  MacOSX architectures:
  MacOSX SDK:

  Tcl/Tk NVIZ:                yes

  BLAS support:               no
  C++ support:                no
  Cairo support:              yes
  DWG support:                no
  FFMPEG support:             no
  FFTW support:               yes
  FreeType support:           yes
  GDAL support:               yes
  GEOS support:               no
  JPEG support:               yes
  LAPACK support:             no
  Large File support (LFS):   yes
  LIBLAS support:             no
  MySQL support:              no
  NLS support:                no
  ODBC support:               no
  OGR support:                yes
  OpenGL support:             yes
  PNG support:                yes
  PostgreSQL support:         no
  Readline support:           no
  SQLite support:             no
  Tcl/Tk support:             yes
  wxWidgets support:          yes
  TIFF support:               yes
  X11 support:                yes
  Regex support:              yes
  POSIX thread support:       no

Any thoughts?


Cheers

G

Dr Guillaume Duclaux
Research Scientist
CSIRO Earth Science and Resource Engineering
guillaume.duclaux at csiro.au<mailto:guillaume.duclaux at csiro.au>
Address: Australian Resources Research Centre, 26 Dick Perry Avenue, Kensington WA 6151



On 18/08/2011, at 7:46 AM, William Kyngesburye wrote:

I'm not sure how well g.extension works in GRASS 6.4.  Alternatively, I still include the modbuild hack.  See the readme in /Library/GRASS/6.4/modbuild, it's a little different than your brute force attempt.

On Aug 16, 2011, at 11:08 AM, <Guillaume.Duclaux at csiro.au<mailto:Guillaume.Duclaux at csiro.au>> <Guillaume.Duclaux at csiro.au<mailto:Guillaume.Duclaux at csiro.au>> wrote:

Hi GRASS gurus,

I've been trying to install the r.fuzzy.system add-on to my GRASS' local copy (Mac OSX 10.6.8, binary installed from: http://www.kyngchaos.com/software/grass - thanks for the installer btw!).

Unfortunately I had no luck with compiling and installing the add-on yet.
I've tried 2 approaches:
* the g.extension add-on manager
* and brutal force (svn co + make)
See details below.

...
Then, in a terminal, after checking out the source files for the r.fuzzy.system add-on from svn, got the following errors:

GRASS 6.4.1 (newLocation):~/grass/fuzzySystem/r.fuzzy.system > make MODULE_TOPDIR=/Applications/GRASS-6.4.app/Contents/MacOS/
test -d OBJ.i386-apple-darwin10.7.0 || mkdir -p OBJ.i386-apple-darwin10.7.0
gcc -I/Users/Shared/src/GRASS/grass-6.4.1-snow/dist.i386-apple-darwin10.7.0/include  -Os -fexceptions   -arch i386 -arch x86_64      -DPACKAGE=\""grassmods"\"  -I/Users/Shared/src/GRASS/grass-6.4.1-snow/dist.i386-apple-darwin10.7.0/include -o OBJ.i386-apple-darwin10.7.0/fuzzylogic.o -c fuzzylogic.c
In file included from fuzzylogic.c:1:
local_proto.h:5:23: error: grass/gis.h: No such file or directory
local_proto.h:6:27: error: grass/glocale.h: No such file or directory
In file included from fuzzylogic.c:1:
local_proto.h:106: error: expected specifier-qualifier-list before ‘RASTER_MAP_TYPE’
local_proto.h:116: error: expected specifier-qualifier-list before ‘DCELL’
local_proto.h:136: error: expected specifier-qualifier-list before ‘FCELL’
local_proto.h:185: error: expected ‘)’ before ‘cell’
fuzzylogic.c:3: error: expected ‘)’ before ‘cell’
In file included from fuzzylogic.c:1:
local_proto.h:5:23: error: grass/gis.h: No such file or directory
local_proto.h:6:27: error: grass/glocale.h: No such file or directory
In file included from fuzzylogic.c:1:
local_proto.h:106: error: expected specifier-qualifier-list before ‘RASTER_MAP_TYPE’
local_proto.h:116: error: expected specifier-qualifier-list before ‘DCELL’
local_proto.h:136: error: expected specifier-qualifier-list before ‘FCELL’
local_proto.h:185: error: expected ‘)’ before ‘cell’
fuzzylogic.c:3: error: expected ‘)’ before ‘cell’
lipo: can't figure out the architecture type of: /var/folders/F1/F1w0tzFYEbiJcYgLf9+Mh++++TI/-Tmp-//cchVfFcE.out
make: *** [OBJ.i386-apple-darwin10.7.0/fuzzylogic.o] Error 1


I found a few posts that seem to highlight similar issues on various architectures: http://trac.osgeo.org/grass/ticket/620, http://comments.gmane.org/gmane.comp.gis.grass.user/39745
But I didn't find the solution.

Hopefully someone will be able to help me here... I'm kind of stuck!

Cheers

Guillaume

-----
William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
http://www.kyngchaos.com/

Theory of the Universe

There is a theory which states that if ever anyone discovers exactly what the universe is for and why it is here, it will instantly disappear and be replaced by something even more bizarrely inexplicable.  There is another theory which states that this has already happened.

-Hitchhiker's Guide to the Galaxy 2nd season intro





More information about the grass-user mailing list