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

20031210: Problems with instaling Udunits



Mae Qiu,

>Date: Tue, 9 Dec 2003 15:44:12 -0800
>From: Mae Qiu <address@hidden>
>Organization: NOAA
>To: Steve Emmerson <address@hidden>
>Subject: Re: 20031208: Problems with instaling Udunits 

The above message contained the following:

> Thank you very much for  your reply.
> 
> I corrected the settings of my environmental variables and performed 
> steps 3 through 6 described near the end of the file INSTALL without 
> problems.  I attached a new config.log file. 

Thanks.  I would have liked to have seen the file "configure.log" as
well.

...

> But I got error messages at step 7. Please see the attached make.log 
> file. 
...
> making `all' in directory 
> /Users/maeqiu/Code/Fortran_code/dir_test/udunits-1.12.1/src/lib
> 
> ln -s ../port/misc/udalloc.c .
> ln -s ../port/misc/udalloc.h .
> /usr/bin/cc -c -O -I../port/misc -I../port/cfortran 
> -DUT_DEFAULT_PATH='"/Users/maeqiu/Code/Fortran_code/dir_test/udunits-1.12.1/etc/udunits.dat"'
>  -Df2cFortran utlib.c
> utlib.c:1376: undefined type, found `ptrdiff_t'
> cpp-precomp: warning: errors during smart preprocessing, retrying in basic 
> mode
> utlib.c: In function `utInit':
> utlib.c:1102: warning: assignment makes pointer from integer without a cast
> utlib.c: At top level:

The above error indicates that your C system doesn't define a prototype
for the function "getenv()" in the header-file <stdlib.h>.  This is
non-standard behavior at the POSIX level .

> utlib.c:1377: parse error before "mystrcmp"

The above error indicates that your C system doesn't define the type
"ptrdiff_t" in the header-file <stddef.h>.  This is non-standard
behavior at the C language level.

I would look at the two header-file mentioned above to see if some
feature-test C macros could be defined that would result in the
appropriate behavior.  You could then define these macros in the
CPPFLAGS environment variable and start over (remember to do a "make
distclean").

Failing that, you'll have to modify the code -- adding an appropriate
prototype for getenv() and a definition for ptrdiff_t.

Regards,
Steve Emmerson