[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[UDUNITS #VTP-130419]: ubuntu 8.10 64 bit : make failure


> When running "sudo make"
> I get this error:
> /usr/bin/ld: 
> /usr2/scw/TMP/udunits-1.12.9/src/perl/../lib/libudunits.a(utlib.o): 
> relocation R_X86_64_32 against `a local symbol' can not be used when making a 
> shared object; recompile with -fPIC
> /usr2/scw/TMP/udunits-1.12.9/src/perl/../lib/libudunits.a: could not read 
> symbols: Bad value
> collect2: ld returned 1 exit status
> make[1]: *** [blib/arch/auto/UDUNITS/UDUNITS.so] Error 1
> make: *** [perl/dynamic] Error 1
> Exactly the same procedure produced success on my ubuntu 8.04 32-bit system. 
> I was able to install udunits2 on the 64-bit machine, but unfortunately the 
> package "RNetCDF" will not work with udunits2.  I am sandbagged...

The error message means that the UDUNITS library wasn't compiled for 
position-independent code (PIC); consequently, it can't be used to create a 
UDUNITS shareable library.  This is unexpected because the configure(1) script 
should have added the "-fPIC" option to the compilation flags.

You have 2 options:

1. Cause the UDUNITS Perl module to be skipped by setting the environment 
variable PERL to the empty string before (re)executing the configure(1) script. 
 Be sure to execute the command "make distclean" first.

2. Force the use of the "-fPIC" option by including it in the value of the 
CFLAGS environment variable before (re)executing the configure(1) script.  
Again, execute the "make distclean" command first.

Steve Emmerson

Ticket Details
Ticket ID: VTP-130419
Department: Support UDUNITS
Priority: Normal
Status: Closed

NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us.