[GRASS-user] Compiling GRASS 6.4.0RC5 on AIX 5.3

Mike Waldron mwaldron at email.unc.edu
Mon Dec 14 13:32:07 EST 2009


Yes, I copied the ldAix script from the Tcl/Tk package.

After attempting all the suggestions, I finally used --disable-shared on 
the configure command, and all but a handful of modules successfully 
compiled. I was able to individually address the ones that failed 
through Makefile edits and several small source code/header file edits.

The environment variables and configure command that worked were:

export PATH=/usr/local/bin:/opt/freeware/bin:$PATH
export OBJECT_MODE=64
export LIBICONV=/opt/freeware
export CC="xlc_r -q64"
export CFLAGS="-O -qstrict"
export CXX="xlC_r -q64"
export CXXFLAGS="-O -qstrict"
export AR="ar -X64"
export F77="xlf_r -q64"
export CPPFLAGS="-I/afs/isis/pkg/libpng/include -I/usr/local/include 
-I$LIBICONV/include -I/usr/lpp/X11/include/X11"
export LDFLAGS="-L/usr/local/lib -L$LIBICONV/lib -L/usr/lib 
-L/usr/X11R6/lib -lc"

./configure --prefix=/afs/isis/pkg/grass-6.4.0 --enable-64bit 
--disable-shared --with-includes="/usr/include/fontconfig 
/usr/include/X11 /usr/include/X11/Xft /usr/include/X11/ext" 
--x-includes=/usr/include/X11 --x-libraries=/usr/X11R6/lib  
--with-fftw-includes=/afs/isis/pkg/fftw-3.2.2/include 
--with-fftw-libs=/afs/isis/pkg/fftw-3.2.2/lib 
--with-gdal=/afs/isis/pkg/gdal/bin/gdal-config 
--with-proj-includes=/afs/isis/pkg/proj/include 
--with-proj-libs=/afs/isis/pkg/proj/lib 
--with-proj-share=/afs/isis/pkg/proj/share/proj 
--with-tcltk-includes=/usr/local/include 
--with-tcltk-libs=/usr/local/lib --with-opengl-includes=/usr/include/GL

Mike

Glynn Clements wrote:
> Mike Waldron wrote:
>
>   
>> I have gotten the configure to run successfully. Here is a portion of 
>> the make that has a failure. It is in a library so this obviously has a 
>> cascading effect of causing many other modules to fail to compile.
>>     
>
>   
>> /afs/isis.unc.edu/pkg/grass-6.4.0/.build/rs_aix53/grass-6.4.0RC5/ldAix
>>     
>
> ISTR that the autoconf code for shared libraries was taken from
> Tcl/Tk. However, we don't appear to include the ldAix script.
> Presumably you added that manually?
>
>   
>> ld: 0706-006 Cannot find or open library file: -l grass_datetime
>>         ld:open(): A file or directory in the path name does not exist.
>> make[3]: *** 
>> [/afs/isis.unc.edu/pkg/grass-6.4.0/.build/rs_aix53/grass-6.4.0RC5/dist.powerpc-ibm-aix5.3.0.0/lib/libgrass_gis.6.4.0RC5.so] 
>> Error 255
>> make[3]: Leaving directory 
>> `/afs/isis.unc.edu/pkg/grass-6.4.0/.build/rs_aix53/grass-6.4.0RC5/lib/gis'
>>
>>
>> What's odd here is that it did build the grass_datetime library earlier, 
>> so I'm not sure why it can't find it.
>>     
>
> Oh well. I'm not familiar with AIX linking, so I can't really offer
> much advice. You might try bypassing the ldAix script with e.g.:
>
> make SHLIB_LD='/bin/ld -bhalt:4 -bM:SRE -bE:lib.exp -H512 -T512 -bnoentry -b64'
>
> Or find a project which successfully builds shared libraries, and copy
> the linking flags from that.
>
> Or even seeing if there are some debug flags you can add in case they
> provide any clues.
>
> Failing that, the last resort would be to use --disable-shared to use
> static libraries instead.
>
>   



More information about the grass-user mailing list