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

[UDUNITS #KKZ-398054]: Compiling udunits on Intel MacBook

This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.


  • Subject: [UDUNITS #KKZ-398054]: Compiling udunits on Intel MacBook
  • Date: Tue, 01 May 2007 12:17:50 -0600

Matt,

> This worked up to a point. When it tries to make the perl module
> (which is actually what I need; I can get the fortran library from
> fink but not the perl module), I get this:
> 
> 
> making `dynamic' in directory /Users/mattnewman/udunits-1.12.4/src/perl
> 
> /sw/bin/perl /sw/lib/perl5-core/5.8.8/ExtUtils/xsubpp  -typemap /sw/
> lib/perl5-core/5.8.8/ExtUtils/typemap
> -typemap typemap  UDUNITS.xs > UDUNITS.xsc && mv UDUNITS.xsc UDUNITS.c
> Please specify prototyping behavior for UDUNITS.xs (see perlxs manual)
> c89 -c  -I../lib -I../port/misc -I/sw/include -fno-common -
> DPERL_DARWIN -no-cpp-precomp -fno-strict-aliasi
> ng -pipe -Wdeclaration-after-statement -I/usr/local/include -I/opt/
> local/include -O3   -DVERSION=\"1.12.4\
> " -DXS_VERSION=\"1.12.4\"  "-I/sw/lib/perl5-core/5.8.8/darwin-thread-
> multi-2level/CORE"  -Df2cFortran UDUN
> ITS.c
> c89: illegal option -- f
> usage: c89 [-cEgs] [-D name[=value]] [-I directory] ... [-L
> directory] ...
> [-o outfile] [-O optlevel] [-U name]... operand ...
> make[1]: *** [UDUNITS.o] Error 1
> make: *** [perl/dynamic] Error 1

Making Perl extension modules is tricky because the perl-based
build procedure insists on using the same compiler options 
that was used to build the perl interpreter.  This can cause
problems if the same compiler isn't used.

Discover what compiler was used to build your "perl" utility
with the command "perl -V".  Then

    1.  Go to the top-level of the source-directory.

    2.  Execute the command "make distclean".

    3.  Set any environment variables as before.

    4.  Set the environment variable CC to the pathname of
        the compiler that was used to build the "perl"
        utility.

    5.  Execute the "configure" script.

    6.  Execute the command "make".

    7.  Execute the command "make install".

Let me know how it goes.

Regards,
Steve Emmerson

Ticket Details
===================
Ticket ID: KKZ-398054
Department: Support UDUNITS
Priority: Normal
Status: On Hold