[GRASS-dev] GRASS 7 g.extension on OS X

Running OS X 10.8.4 with Xcode 4.6.2. With GRASS 6.4.3 from kyngchaos, g.extension would work on a Mac with 10.6.8, however was failing on 10.8.4 with the following errors:

In file included from catchment.c:1:
global.h:1:19: error: stdio.h: No such file or directory
global.h:2:20: error: stdlib.h: No such file or directory
global.h:3:20: error: string.h: No such file or directory
global.h:4:18: error: math.h: No such file or directory
In file included from /Applications/GRASS-6.4.app/Contents/MacOS/include/grass/gis.h:651,
from global.h:5,
from catchment.c:1:

William proposed the following solution which solved my problems for GRASS 6.4.3 on 10.8.4:

Hmm, could be a sysroot problem. The sysroot flags are still in platform.make from how I compiled it (to support a minimum OS version). Extensions for a specific OS X version do not need a sysroot, and the 10.6 sdk I use doesn’t even exist in recent Xcodes.

Try removing the sysroot flags from include/make/platform.make in the GRASS.app package:

-isysroot /Developer/SDKs/MacOSX10.6.sdk

William Kyngesburye <kyngchaosatkyngchaosdotcom>
http://www.kyngchaos.com/

I was getting the same initial errors in GRASS 7 as in 6.4.3, so I made the same changes in GRASS 7 and got past the initial errors. Installing static-libintl-0.18.1.1-5 resolved an issue with a missing library. Now I am getting the following error:

RASS 7.0.svn (englevale):~ > g.extension extension=r.stream.basins
Fetching <r.stream.basins> from GRASS-Addons SVN (be patient)…
Compiling…
basins_inputs.c: In function ‘process_vector’:
basins_inputs.c:60: warning: assignment discards qualifiers from pointer target type
basins_inputs.c: In function ‘process_vector’:
basins_inputs.c:60: warning: assignment discards qualifiers from pointer target type
ERROR: MAPSET PERMANENT - permission denied
make: *** [r.stream.basins.tmp.html] Error 1
ERROR: Compilation failed, sorry. Please check above error messages.

The permission all appear to correct. It is creating .tmp and a directory in It:

drwxr-xr-x 4 rcline staff 136 Aug 20 08:44 .tmp

drwxr-xr-x 2 rcline staff 68 Aug 20 08:37 dhcp-10-33-133-197.swc.nd.gov

Anybody have an idea what would cause the permissions denied error?

Royce

Micahel,

Here is a patch for GRASS 6.4.3 source to strip out the isysroot flag, allowing g.extension to compile extensions at runtime. I've updated dev6 and trunk.

(attachments)

Makefile.patch (580 Bytes)