5.0beta4 compile error: d.area
Conn Copas
conn.copas at dsto.defence.gov.au
Wed Oct 27 05:44:24 EDT 1999
Malcolm Williamson <malcolm at cast.uark.edu> writes:
> Any thoughts on the following? Compiled under Solaris2.6, gcc, Sun
> Enterprise 5000.
>
> gcc -s -o /proj/grass4.1/grass5.0/etc/bin/contrib/cmd/d.area
> OBJ.sparc-sun-solaris2.6/main.o OBJ.sparc-sun-solaris2.6/plot.o
> /proj/grass4.1/grass5.0beta/src/libes/LIB.sparc-sun-solaris2.6/libdisplay.a
> /proj/grass4.1/grass5.0beta/src/libes/LIB.sparc-sun-solaris2.6/libraster.a
> /proj/grass4.1/grass5.0beta/src/libes/LIB.sparc-sun-solaris2.6/libvect.a
> /proj/grass4.1/grass5.0beta/src/libes/LIB.sparc-sun-solaris2.6/libdig2.a
> /proj/grass4.1/grass5.0beta/src/libes/LIB.sparc-sun-solaris2.6/libgis.a
> -lm
> Undefined first referenced
> symbol in file
> xdrmem_create
Aside from any questions about whether the configuration scripts are doing their
thing, one way to find a lib file which references that symbol is to trawl your
libs and perform the Unix command "nm" on each. I seem to have that symbol in
/usr/lib/libnsl.so on an Ultra. Here's a script I use:
------------------------------ <cut here> ---------------------------------
#!/bin/sh
# Usage: script_name <symbol> <root directory>
# where
# <symbol> is what we want "nm" to look for
# <root directory> is where to initiate a recursive find
if (test "$#" != 2) then
echo "Usage: script_name <symbol> <root directory>"
exit
fi
main()
{
arg1=$1
while (test "$2" != "") do
line=`nm $2 | grep $arg1`
if (test "$line" != "") then
echo $2
echo $line
echo
fi
shift
done
}
so_files=`find $2 -name '*lib*.so' -print`
a_files=`find $2 -name '*lib*.a' -print`
main $1 $so_files $a_files
------------------------------ <cut here> ---------------------------------
--
Conn V Copas
Information Technology Division
Defence Science and Technology Organisation
PO Box 1500
Salisbury tel: +61 (0)8 825 95349
SA 5108 fax: +61 (0)8 825 95589
Australia e-mail: Conn.Copas at dsto.defence.gov.au
------------------------------------------------------
More information about the grass-user
mailing list