Ok, thanks for the tip.
Starting fresh again, on ANOTHER machine.
installed fftw 2.1.5 using -g -O2 -fPIC -D_FILE_OFFSET_BITS=64
The fftw test work fine..
Installed gdal
gdalinfo --version
GDAL 1.2.5.0, released 2004/11/22
tcl/tk 8.4.9, proj4.4.9
reran ldconfig, libgdal.so.1 is in usr/local/lib,
gcc -dumpversion
4.0.0
gcc -dumpmachine
x86_64-redhat-linux (Fedora Core 4)
Same errors! On make (Grass 6.0.0) I get:
Errors in:
/grass/grass-6.0.0/lib/gmath
/grass/grass-6.0.0/lib/imagery
/grass/grass-6.0.0/lib/rst/interp_float
/grass/grass-6.0.0/imagery/i.class
/grass/grass-6.0.0/imagery/i.cluster
/grass/grass-6.0.0/imagery/i.gensig
/grass/grass-6.0.0/imagery/i.gensigset
/grass/grass-6.0.0/imagery/i.group
/grass/grass-6.0.0/imagery/i.his.rgb
/grass/grass-6.0.0/imagery/i.maxlik
/grass/grass-6.0.0/imagery/i.ortho.photo/libes
/grass/grass-6.0.0/imagery/i.ortho.photo/menu
/grass/grass-6.0.0/imagery/i.ortho.photo/photo.2image
/grass/grass-6.0.0/imagery/i.ortho.photo/photo.2target
/grass/grass-6.0.0/imagery/i.ortho.photo/photo.camera
/grass/grass-6.0.0/imagery/i.ortho.photo/photo.elev
/grass/grass-6.0.0/imagery/i.ortho.photo/photo.init
/grass/grass-6.0.0/imagery/i.ortho.photo/photo.rectify
/grass/grass-6.0.0/imagery/i.ortho.photo/photo.target
/grass/grass-6.0.0/imagery/i.points
/grass/grass-6.0.0/imagery/i.rectify
/grass/grass-6.0.0/imagery/i.rgb.his
/grass/grass-6.0.0/imagery/i.smap/shapiro
/grass/grass-6.0.0/imagery/i.target
/grass/grass-6.0.0/imagery/i.vpoints
/grass/grass-6.0.0/imagery/i.cca
/grass/grass-6.0.0/imagery/i.fft
/grass/grass-6.0.0/imagery/i.ifft
/grass/grass-6.0.0/imagery/i.pca
/grass/grass-6.0.0/imagery/i.zc
/grass/grass-6.0.0/ps/ps.map
/grass/grass-6.0.0/raster/r.grow2
/grass/grass-6.0.0/raster/r.param.scale
/grass/grass-6.0.0/raster/r.resamp.rst
/grass/grass-6.0.0/raster/r.in.gdal
/grass/grass-6.0.0/raster/r.surf.fractal
/grass/grass-6.0.0/raster/r.surf.gauss
/grass/grass-6.0.0/raster/r.surf.random
/grass/grass-6.0.0/vector/v.kernel
/grass/grass-6.0.0/vector/v.surf.rst
and:
cd gmath
make
gcc -I/grass/grass-6.0.0/include
-I/grass/grass-6.0.0/dist.x86_64-unknown-linux-gnu/include/grass -g -O2
-Wall -Wconversion -Wno-implicit-int -fPIC -DPACKAGE=\""grasslibs"\"
-DPACKAGE=\""grasslibs"\" -I/grass/grass-6.0.0/include
-I/grass/grass-6.0.0/dist.x86_64-unknown-linux-gnu/include/grass \
-o OBJ.x86_64-unknown-linux-gnu/del2g.o -c del2g.c
In file included from del2g.c:23:
numerical.h:47: error: array type has incomplete element type
del2g.c: In function ‘del2g’:
del2g.c:34: warning: passing argument 1 of ‘G_malloc’ with different width
due to prototype
del2g.c:35: warning: passing argument 1 of ‘G_malloc’ with different width
due to prototype
make: *** [OBJ.x86_64-unknown-linux-gnu/del2g.o] Error 1
and:
cd ps
make
make[1]: Entering directory `/grass/grass-6.0.0/ps/ps.map'
gcc -Wl,--export-dynamic
-L/grass/grass-6.0.0/dist.x86_64-unknown-linux-gnu/lib
-I/usr/local/include -DPACKAGE=\""grassmods"\" -o
/grass/grass-6.0.0/dist.x86_64-unknown-linux-gnu/bin/ps.map
OBJ.x86_64-unknown-linux-gnu/box.o
OBJ.x86_64-unknown-linux-gnu/chk_scale.o
OBJ.x86_64-unknown-linux-gnu/comment.o
OBJ.x86_64-unknown-linux-gnu/distance.o
OBJ.x86_64-unknown-linux-gnu/do_geogrid.o
OBJ.x86_64-unknown-linux-gnu/do_grid.o
OBJ.x86_64-unknown-linux-gnu/do_header.o
OBJ.x86_64-unknown-linux-gnu/do_labels.o
OBJ.x86_64-unknown-linux-gnu/do_masking.o
OBJ.x86_64-unknown-linux-gnu/do_plt.o
OBJ.x86_64-unknown-linux-gnu/do_psfiles.o
OBJ.x86_64-unknown-linux-gnu/do_scalebar.o
OBJ.x86_64-unknown-linux-gnu/do_vectors.o
OBJ.x86_64-unknown-linux-gnu/eps.o OBJ.x86_64-unknown-linux-gnu/error.o
OBJ.x86_64-unknown-linux-gnu/fit_map.o
OBJ.x86_64-unknown-linux-gnu/get_font.o
OBJ.x86_64-unknown-linux-gnu/getgrid.o
OBJ.x86_64-unknown-linux-gnu/get_scalebar.o
OBJ.x86_64-unknown-linux-gnu/gprims.o OBJ.x86_64-unknown-linux-gnu/input.o
OBJ.x86_64-unknown-linux-gnu/key_data.o
OBJ.x86_64-unknown-linux-gnu/main.o
OBJ.x86_64-unknown-linux-gnu/makeprocs.o
OBJ.x86_64-unknown-linux-gnu/map_info.o
OBJ.x86_64-unknown-linux-gnu/map_setup.o
OBJ.x86_64-unknown-linux-gnu/mtextbox.o
OBJ.x86_64-unknown-linux-gnu/outl_io.o
OBJ.x86_64-unknown-linux-gnu/parse_list.o
OBJ.x86_64-unknown-linux-gnu/ps_clrtbl.o
OBJ.x86_64-unknown-linux-gnu/ps_colors.o
OBJ.x86_64-unknown-linux-gnu/ps_fclrtbl.o
OBJ.x86_64-unknown-linux-gnu/ps_header.o
OBJ.x86_64-unknown-linux-gnu/ps_map.o
OBJ.x86_64-unknown-linux-gnu/ps_outline.o
OBJ.x86_64-unknown-linux-gnu/ps_raster.o
OBJ.x86_64-unknown-linux-gnu/ps_vareas.o
OBJ.x86_64-unknown-linux-gnu/ps_vlegend.o
OBJ.x86_64-unknown-linux-gnu/ps_vlines.o
OBJ.x86_64-unknown-linux-gnu/ps_vpoints.o
OBJ.x86_64-unknown-linux-gnu/r_cell.o
OBJ.x86_64-unknown-linux-gnu/r_colortable.o
OBJ.x86_64-unknown-linux-gnu/read_cfg.o
OBJ.x86_64-unknown-linux-gnu/r_group.o
OBJ.x86_64-unknown-linux-gnu/r_header.o
OBJ.x86_64-unknown-linux-gnu/r_info.o
OBJ.x86_64-unknown-linux-gnu/r_labels.o
OBJ.x86_64-unknown-linux-gnu/r_paper.o
OBJ.x86_64-unknown-linux-gnu/r_plt.o OBJ.x86_64-unknown-linux-gnu/r_rgb.o
OBJ.x86_64-unknown-linux-gnu/r_text.o
OBJ.x86_64-unknown-linux-gnu/r_vareas.o
OBJ.x86_64-unknown-linux-gnu/r_vlegend.o
OBJ.x86_64-unknown-linux-gnu/r_vlines.o
OBJ.x86_64-unknown-linux-gnu/r_vpoints.o
OBJ.x86_64-unknown-linux-gnu/r_wind.o OBJ.x86_64-unknown-linux-gnu/scale.o
OBJ.x86_64-unknown-linux-gnu/scan_gis.o
OBJ.x86_64-unknown-linux-gnu/scan_misc.o
OBJ.x86_64-unknown-linux-gnu/scan_ref.o
OBJ.x86_64-unknown-linux-gnu/session.o
OBJ.x86_64-unknown-linux-gnu/show_scale.o
OBJ.x86_64-unknown-linux-gnu/symbol.o
OBJ.x86_64-unknown-linux-gnu/textbox.o OBJ.x86_64-unknown-linux-gnu/vect.o
OBJ.x86_64-unknown-linux-gnu/vector.o OBJ.x86_64-unknown-linux-gnu/yesno.o
-lgrass_vect -lgrass_dig2 -lgrass_dgl -lgrass_rtree -lgrass_linkm
-lgrass_dbmiclient -lgrass_dbmibase -L/usr/local/lib -lgdal -lgrass_gproj
-lproj -L/usr/local/lib -lgdal -lgrass_symb -lgrass_gis -lgrass_datetime
-lz -lgrass_datetime -lgrass_I -lgrass_vask -lncurses -lbsd-compat
-lgrass_gmath -lfftw -lm -lm -lz
/usr/bin/ld: cannot find -lgrass_I
collect2: ld returned 1 exit status
make[1]: *** [/grass/grass-6.0.0/dist.x86_64-unknown-linux-gnu/bin/ps.map]
Error 1
make[1]: Leaving directory `/grass/grass-6.0.0/ps/ps.map'
I'm assuming that the failed build of gmath is creating all the other
errors? What could be causing this? Is there anywork around to getting
these libraries to build somehow?
Thomas Colson wrote:
Yeah, I kinda figured that a great deal of stuff wasn't being built as
it
should. So how do you correct the error on the stuff that should be
built,
but isn't being built? How can an "out of box" install of Grass6 on a
new
install of Fedora have so many library problems? I'd like to think I
spent
a great deal of time making sure all the correct versions of the
dependancies were installed prior to the grass build, but it seems like
there are some undocumented secret dependancies....
some libraries did't build, so anything that needs them will fail.
cd lib/gmath
make
gcc -shared -o
/grass6/dist.x86_64-unknown-linux-gnu/lib/libgrass_gmath.6.1.cvs.so
[snip]
/usr/bin/ld: /usr/local/lib/libfftw.a(fftwnd.o): relocation R_X86_64_32
against `a local symbol' can not be used when making a shared object;
recompile with -fPIC
It appears that /usr/local/lib/libfftw.a has been built without the
-fPIC switch, which means that it can only be linked directly into an
executable, not into a shared library. GRASS needs FFTW to be usable
by shared libraries.
Can FFTW be built as a shared library on x86-64? That would be the
simplest solution. Otherwise try adding -fPIC when building FFTW, e.g.
CFLAGS='-g -02 -fPIC' ./configure ...
--
Glynn Clements <glynn@gclements.plus.com>
--
Thomas Colson
Center For Earth Observation
North Carolina State University
Raleigh, NC
(919)515 3434
(919)673 8023
tom_colson@ncsu.edu