[GRASS-dev] compilation of grass on AIX 7.1

Markus Neteler neteler at osgeo.org
Tue Jun 11 13:57:16 PDT 2013


On Tue, Jun 11, 2013 at 11:18 AM, Glynn Clements
<glynn at gclements.plus.com> wrote:
>
> Markus Neteler wrote:
>
>> > I suspect that GDALLIBS should include -lstdc++. That's arguably a bug
>> > in the gdal-config script. In practice it will only matter if GDAL is
>> > a static library; shared libraries record their dependencies.
...
> Edit the gdal-config script and put it in there. Along with anything
> else which is required to get the GDAL configure test to pass.

Yes, that did the trick and was sufficient.

A few remaining issues:

* AIX namespace pollutions:
/gpfs/home/neteler/software/grass-7.0.svn/lib/rst/interp_float
/gpfs/home/neteler/software/grass-7.0.svn/raster/r.resamp.rst
/gpfs/home/neteler/software/grass-7.0.svn/vector/v.surf.rst
/gpfs/home/neteler/software/grass-7.0.svn/vector/v.vol.rst

gmake[1]: Entering directory
`/gpfs/home/neteler/software/grass-7.0.svn/lib/rst/interp_float'
gcc  -g -O2    -I/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/include
-I/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/include
 -D_FILE_OFFSET_BITS=64 -I/gpfs/home/neteler/bin/include
-DPACKAGE=\""grasslibs"\"
-I/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/include
-I/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/include
-o OBJ.powerpc-ibm-aix7.1.0.0/point2d.o -c point2d.c
point2d.c: In function 'IL_check_at_points_2d':
point2d.c:54:43: error: expected identifier or '(' before numeric constant
point2d.c:78:3: error: 'r' undeclared (first use in this function)
point2d.c:78:3: note: each undeclared identifier is reported only once
for each function it appears in
point2d.c:87:5: error: lvalue required as left operand of assignment
point2d.c:88:2: error: 'zz' undeclared (first use in this function)
point2d.c:89:2: error: 'err' undeclared (first use in this function)
point2d.c:90:2: error: 'xmm' undeclared (first use in this function)
point2d.c:91:2: error: 'ymm' undeclared (first use in this function)
point2d.c:145:5: error: lvalue required as left operand of assignment
gmake[1]: *** [OBJ.powerpc-ibm-aix7.1.0.0/point2d.o] Error 1
gmake[1]: Leaving directory
`/gpfs/home/neteler/software/grass-7.0.svn/lib/rst/interp_float'
gmake: *** [default] Error 2


* "System error: Not enough space"
/gpfs/home/neteler/software/grass-7.0.svn/raster/simwe/r.sim.water
/gpfs/home/neteler/software/grass-7.0.svn/raster/simwe/r.sim.sediment

Following
http://unix.ittoolbox.com/groups/technical-functional/ibm-aix-l/could-not-load-program-not-enough-space-4221969
I used "truss":

-bash-3.2$ GISRC=/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/demolocation/.grassrc70
GISBASE=/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0
PATH="/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/bin:/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/bin:$PATH"
PYTHONPATH="/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/etc/python:/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/etc/python:$PYTHONPATH"
LIBPATH="/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/bin:/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib:/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib:-L/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib
-L/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib"
LC_ALL=C truss /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/bin/r.sim.water
--html-description
execve("/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/bin/r.sim.water",
0x2FF227B8, 0x20013478)  argc: 3Could not load program
kwrite(2, " C o u l d   n o t   l o".., 23)     = 23
/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/bin/r.sim.water
kwrite(2, " / g p f s / h o m e / n".., 85)        = 85
:
kwrite(2, " :\n", 2)                            = 2
sbrk(0x00000000)                                = 0x3009A400
vmgetinfo(0x2FF22120, 7, 16)                    = 0
sbrk(0x00000000)                                = 0x3009A400
__libc_sbrk(0x00000000)                         = 0x3009A400
System errorkwrite(2, " S y s t e m   e r r o r", 12)   = 12
: kwrite(2, " :  ", 2)                          = 2
Not enough spacekwrite(2, " N o t   e n o u g h   s".., 16)     = 16

kwrite(2, "\n", 1)                              = 1
kfcntl(1, F_GETFL, 0x2FF22FFC)                  = 67110914
kfcntl(2, F_GETFL, 0x2FF22FFC)                  = 67110914
_exit(255)
-bash-3.2$

... no idea what's wrong here. I have, cough, 41TB of free space in HOME.
It only affects these two commands.


* All temporal Python modules show this issue:

Traceback (most recent call last):
  File "/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/scripts/t.create",
line 60, in <module>
    import grass.temporal as tgis
  File "/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/etc/python/grass/temporal/__init__.py",
line 10, in <module>
    from abstract_space_time_dataset import *
  File "/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/etc/python/grass/temporal/abstract_space_time_dataset.py",
line 18, in <module>
    from spatio_temporal_relationships import *
  File "/gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/etc/python/grass/temporal/spatio_temporal_relationships.py",
line 25, in <module>
    import grass.lib.vector as vector
ImportError: No module named lib.vector
gmake: *** [t.create.tmp.html] Error 1
rm t.create.tmp.html

... however, pygrass seems to be built.

Markus


More information about the grass-dev mailing list