[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[UDUNITS #OLT-675021]: UDUNITS on Linux 2.6
- Subject: [UDUNITS #OLT-675021]: UDUNITS on Linux 2.6
- Date: Wed, 30 Aug 2006 10:04:39 -0600
Gabriella,
> Hello, I have been trying to compile UDUNITS on my Linux box
> (SusE distro) and I'm running into problems: looks like either my
> library path is not right or I am actually missing some libraries.
> Thanx
> gaby
>
> make[1]: Entering directory `/home/turekg/tmp/udunits-1.12.4/src/udunits'
> gcc -o udunits -g -O2 udunits.o
> -L/home/turekg/tmp/udunits-1.12.4/src/lib -ludunits
> -L/home/turekg/tmp/udunits-1.12.4/src/port/misc -ludport
> /home/turekg/tmp/udunits-1.12.4/src/lib/libudunits.a(utlib.o): In
> function `dectime':
> /home/turekg/tmp/udunits-1.12.4/src/lib/utlib.c:432: undefined reference
> to `floor'
...
It appears that your C runtime library doesn't contain the standard math
functions. Try to find what library the math functions are in. The
nm(1) utility can be very helpful in this. For example:
~/udunits/lib: nm -gp /usr/lib/lib*.a | grep floor
/usr/lib/libm.a[floor.o]:
0000000000 T __floor
0000000000 T floor
/usr/lib/libm.a[floorf.o]:
0000000224 T __floorf
0000000224 T floorf
/usr/lib/libm.a[floorl.o]:
0000000576 T __floorl
0000000576 T floorl
Once you know the library that contains the math functions, add an ld(1)
reference to it to the environment variable LD_MATH and re-execute the
configure(1) script. For example:
$ make distclean
...
$ LD_MATH='-L/usr/lib -lm' ./configure >configure.log 2>&1
Then, continue with the build process with the "make" command.
Regards,
Steve Emmerson
Ticket Details
===================
Ticket ID: OLT-675021
Department: Support UDUNITS
Priority: Normal
Status: Closed