[GRASS-dev] compilation of grass on AIX 7.1

Markus Metz markus.metz.giswork at gmail.com
Mon Nov 25 01:25:49 PST 2013


if some libraries are in a non-standard location, you might need to add

-Wl,-bsvr4,-R,/opt/freeware/lib

or equivalent to LDFLAGS [0].

Markus M

[0] http://grasswiki.osgeo.org/wiki/Compile_and_Install#AIX

On Sun, Nov 24, 2013 at 8:16 PM, Markus Neteler <neteler at osgeo.org> wrote:
> On Sun, Nov 24, 2013 at 5:07 PM, Glynn Clements
> <glynn at gclements.plus.com> wrote:
>>
>> Markus Neteler wrote:
>>
>>> Any hints how to "inject" libstdc++.so for those modules which depend
>>> on $(GPROJLIB)?
>>> Maybe a trivial issue but I just don't know what to change.
>>
>> AFAICT, libgrass_gproj only requires libstdc++ because of GDAL.
>
> Yes, I see.
>
>> So the definition of GDALLIBS in Platform.make should include -lstdc++
>> (and anything else which is required for C++ support).
>
> Unfortunately adding it:
>
> svn diff include/
> Index: include/Make/Platform.make.in
> ===================================================================
> --- include/Make/Platform.make.in       (revision 58291)
> +++ include/Make/Platform.make.in       (working copy)
> @@ -157,7 +157,7 @@
>  LAPACKINC           = @LAPACKINC@
>
>  #GDAL/OGR
> -GDALLIBS            = @GDAL_LIBS@
> +GDALLIBS            = @GDAL_LIBS@ -lstdc++
>  GDALCFLAGS          = @GDAL_CFLAGS@
>  USE_GDAL            = @USE_GDAL@
>  USE_OGR             = @USE_OGR@
>
> ... does not help. I checked, it is present in
> include/Make/Platform.make
>
>> However, I don't understand why this would only affect libgrass_gproj
>> and not other libraries which require GDAL.
>
> Indeed it does, I looped over it now. Here the reduced list of failure
> (the others ldd checks report no error):
>
> libgrass_cluster.7.0.svn.so needs:
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_imagery.7.0.svn.so
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_raster.7.0.svn.so
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_gis.7.0.svn.so
>          /usr/lib/libc.a(shr_64.o)
>          /usr/lib/libpthread.a(shr_xpg5_64.o)
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_vector.7.0.svn.so
>          /opt/freeware/lib/libiconv.a(libiconv.so.2)
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_datetime.7.0.svn.so
>          /usr/lib/libz.a(libz.so.1)
>          /unix
>          /usr/lib/libcrypt.a(shr_64.o)
> Cannot find libstdc++.a(libstdc++.so.6)
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_dbmiclient.7.0.svn.so
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_dbmibase.7.0.svn.so
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_dgl.7.0.svn.so
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_dig2.7.0.svn.so
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_linkm.7.0.svn.so
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_rtree.7.0.svn.so
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_btree2.7.0.svn.so
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_gproj.7.0.svn.so
> Cannot find libgcc_s.a(shr.o)
>          /usr/lib/libc.a(shr.o)
> Cannot find libstdc++.a(libstdc++.so.6)
> Cannot find libgcc_s.a(shr.o)
>          /usr/lib/libcrypt.a(shr.o)
>
>
> libgrass_gproj.7.0.svn.so needs:
> Cannot find libstdc++.a(libstdc++.so.6)
>          /usr/lib/libpthread.a(shr_xpg5_64.o)
>          /opt/freeware/lib/libiconv.a(libiconv.so.2)
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_gis.7.0.svn.so
> Cannot find libgcc_s.a(shr.o)
>          /usr/lib/libc.a(shr_64.o)
>          /unix
>          /usr/lib/libc.a(shr.o)
>          /gpfs/home/neteler/software/grass-7.0.svn/dist.powerpc-ibm-aix7.1.0.0/lib/libgrass_datetime.7.0.svn.so
>          /usr/lib/libz.a(libz.so.1)
>          /usr/lib/libcrypt.a(shr_64.o)
>          /usr/lib/libcrypt.a(shr.o)
>
> The complete list I have put here:
>
> http://pastebin.com/VXv9nGkG
>
> So two more libs need to somehow be added. Maybe a simple Makefile
> magic but I don't see what to do.
>
> Markus
> _______________________________________________
> grass-dev mailing list
> grass-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/grass-dev


More information about the grass-dev mailing list