[STATSGRASS] GSTAT 2.4.3 compile problem with GRASS 5.4
Thomas.Adams at noaa.gov
Wed Mar 16 10:55:28 EST 2005
The directory names are correct. Thanks to you and Roger for looking
Edzer J. Pebesma wrote:
> Roger Bivand wrote:
>> On Tue, 15 Mar 2005, Thomas Adams wrote:
>>> I am having GSTAT 2.4.3 compile problems with GRASS 5.4. When
>>> configuring gstat for compilation I use:
>>> ./configure --with-grass=/awips/rep/lx/local_apps/grass-build
>>> The GRASS 5.4 lib & include directories are located in
>>> /awips/rep/lx/local_apps/grass-build, but I notice when gstat is
>>> being configured for compilation, I get:
>>> checking for G_gisinit in -lgrass_gis... no
>>> checking for G_gisinit in -lgis... no
>> Edzer: is this related to 5.4.0 going just shared? That only the *.so
>> are in build/dist*/lib? On grass5, Glynn asked on Sunday:
>> "I think that the point is that binary distributions should always
>> include the libraries regardless of whether they are shared or
>> static. IIRC, we currently only include the libraries if they are shared
>> From a packaging (RPM etc) perspective, static libraries would
>> normally go into a separate -devel package, along with the headers,
>> while shared libraries would go into the main package."
>> The configure seems to fail because it is looking for libgis.a or
>> libgrass_gis.a at:
>> AC_CHECK_LIB(grass_gis, G_gisinit, GISLIB="-lgrass_gis
>> AC_CHECK_LIB(gis, G_gisinit, GISLIB="-lgis -ldatetime"))
>> isn't it? Should it see a *.so as an *.a, they are different animals,
>> aren't they?
> No. They're different, but the .a are not required. gstat 2.4.4
> links to grass-6.0.0beta1, which contains only .so in the lib dir;
> I tried the 2.4.3 (targeted at grass 5.x) and the configure
> worked on the grass6 machine, it finds the .so libraries. Then it
> doesn't compile, for obvious reasons.
> Thomas, could you double-check the directory names?
> I need to set up grass 5.4 here in order to check it out.
>>> This is what is located in the lib & include directories:
>>> lx7-tir:adams> cd lib;ls
>>> libgrass_bitmap.so libgrass_dlg.so libgrass_gproj.so
>>> libgrass_btree.so libgrass_D.so libgrass_ibtree.so
>>> libgrass_coorcnv.so libgrass_g3d.so libgrass_icon.so
>>> libgrass_datetime.so libgrass_gedit.so libgrass_I.so
>>> libgrass_dig_atts.so libgrass_gis.so libgrass_linkm.so
>>> libgrass_display.so libgrass_gmath.so libgrass_lock.so
>>> lx7-tir:adams> cd ../include
>>> lx7-tir:adams> ls
>>> datetime.h gisdefs.h gis.h P_datetime.h P_site.h site.h
>>> I get repeated "undefined reference" to various functions 'G_***'
>>> during make. Everything seems to build OK up to:
>>> data.o: In function `read_grass_data':
>>> /awips/rep/lx/local_apps/gstat-2.4.3/src/data.c:2202: undefined
>>> reference to `G_projection'
>>> I'm trying to make GRASS, R, & GSTAT available on other Linux
>>> machines different from what I was using previously.
>> Maybe get to gstat through R rather than directly until you can
>> resolve this, since gstat is available as an R package, and the
>> compiled interface still works between R and GRASS <= 5.4.0.
Thomas E Adams
National Weather Service
Ohio River Forecast Center
1901 South State Route 134
Wilmington, OH 45177
EMAIL: thomas.adams at noaa.gov
More information about the grass-stats