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

Re: 19990726: installation: udunits-1.11.7: cc vs. gcc



Xunqiang Bi,

>Date: Mon, 26 Jul 1999 18:15:45 +0200 (MET DST)
>From: BI XUNQIANG <address@hidden>
>Organization: Abdus Salam International Centre for Theoretical Physics
>To: Steve Emmerson <address@hidden>
>Subject: Re: 19990726: installation: udunits-1.11.7: cc vs. gcc
>Keywords: 199907261402.IAA21347

In the above message, you wrote:

> Thank you very much for your help ! Unfortunely, the two schemes you
> suggested failed for different information (in attached files:
> "scheme1" and "scheme2" .
> 
> Best wishes !
...

> making `all' in directory /DATA/bixq/udunits-1.11.7/src/udunits
> 
> make[1]: Entering directory `/DATA/bixq/udunits-1.11.7/src/udunits'
> make[2]: Entering directory `/DATA/bixq/udunits-1.11.7/src/udunits'
> gcc -c -O -I../lib -I../port/misc  udunits.c
> gcc -o udunits -O udunits.o -R/DATA/bixq/udunits-1.11.7/src/lib 
> -L/DATA/bixq/udunits-1.11.7/src/lib -ludunits 
> -R/DATA/bixq/udunits-1.11.7/src/port/misc 
> -L/DATA/bixq/udunits-1.11.7/src/port/misc -ludport -ly -lm
> make[2]: Leaving directory `/DATA/bixq/udunits-1.11.7/src/udunits'
> make[1]: Leaving directory `/DATA/bixq/udunits-1.11.7/src/udunits'
> 
> returning to directory /DATA/bixq/udunits-1.11.7/src
> 
> cd perl && perl Makefile.PL
> Checking if your kit is complete...
> Looks good
> Warning: -L../lib changed to -L/DATA/bixq/udunits-1.11.7/src/perl/../lib
> Writing Makefile for UDUNITS
> 
> making `dynamic' in directory /DATA/bixq/udunits-1.11.7/src/perl
> 
> make[1]: Entering directory `/DATA/bixq/udunits-1.11.7/src/perl'
> /usr/local/bin/perl -I/opt/perl/lib/sun4-solaris/5.00403 -I/opt/perl/lib 
> /opt/perl/lib/ExtUtils/xsubpp  -typemap /opt/perl/lib/ExtUtils/typemap 
> -typemap typemap UDUNITS.xs >UDUNITS.tc && mv UDUNITS.tc UDUNITS.c
> Please specify prototyping behavior for UDUNITS.xs (see perlxs manual)
> gcc -c -I../lib -I../port/misc -I/usr/local/include -I/opt/gnu/include -O    
> -DVERSION=\"1.11.7\" -DXS_VERSION=\"1.11.7\" -fpic 
> -I/opt/perl/lib/sun4-solaris/5.00403/CORE  UDUNITS.c
> mkdir ./blib
> mkdir ./blib/arch
> mkdir ./blib/arch/auto
> mkdir ./blib/arch/auto/UDUNITS
> Running Mkbootstrap for UDUNITS ()
> chmod 644 UDUNITS.bs
> LD_RUN_PATH="/DATA/bixq/udunits-1.11.7/src/perl/../lib:/usr/local/lib" gcc -o 
> blib/arch/auto/UDUNITS/UDUNITS.so -R/DATA/bixq/udunits-1.11.7/src/perl/../lib 
> -R/usr/local/lib -shared -L/usr/local/lib -L/opt/gnu/lib UDUNITS.o    
> -L/DATA/bixq/udunits-1.11.7/src/perl/../lib -ludunits -lm 
> Text relocation remains                       referenced
>     against symbol                offset      in file
> utHasOrigin                         0xb20             
> /DATA/bixq/udunits-1.11.7/src/perl/../lib/libudunits.a(utlib.o)
> free                                0x13e8            
> /DATA/bixq/udunits-1.11.7/src/perl/../lib/libudunits.a(utscan.o)
...

Hmm...  It could be that gcc should compile the UDUNITS library routines
in your environment with the "-fpic" option.  (We don't have your
environment here, so I can't verify that.  If you still want the perl
extension module for UDUNITS, then try the following:

    1.  Go to the top-level source directory.

    2.  Perform steps 3 through 5 near the end of the INSTALL file as
        before (in particular, use "gcc" for CC).

    3.  Ensure that the environment variable CFLAGS contains the string
        "-fpic", e.g.

            setenv CFLAGS "-fpic"

        or

            export CFLAGS=-fpic

    4.  Perform steps 6 through 9 near the end of the INSTALL file.


> spclima7:3> setenv PERL ' '

The above doesn't set the environment variable PERL to the empty string
like I suggested.  Instead, it sets it to a single space character.
This will cause the UDUNITS build procedure to attempt to build the
perl extension module with a resulting failure (as you saw).  If you
still don't want the perl extension module for UDUNITS, then try the
following:

    1.  Go to the top-level source directory.

    2.  Perform steps 3 through 5 near the end of the INSTALL file as
        before.

    3.  Set the environment variable PERL to the empty string, e.g.

            setenv PERL ''      # NB: no space between the apostrophes

        or

            export PERL=''      # NB: no space between the apostrophes

    4.  Perform steps 6 through 9 near the end of the INSTALL file.

Please let me know if this helps.

--------
Steve Emmerson   <http://www.unidata.ucar.edu>