From: jgoerzen <jgo...@op...> - 2014-04-07 03:15:56
|
On 04/06/2014 03:53 AM, Raphael Manfredi wrote: > Quoting Jake Goerzen <jgo...@op...> from ml.softs.gtk-gnutella.devel: > :I'm trying to compile GTKG version 1.0.1 on solaris 10 for OpenCSW.org > :but I get a compile error (see below). During Configure I noticed this: > : > :Checking IEEE-754 float byte-ordering... not using IEEE-754 here. > : > :It appears that the machine byte-order is not getting identified. > :Several years ago I got it compiled successfully (version 0.96.3) but I > :forgot what I did to get it to work. Perhaps ieeefp.h needs to be > :included somewhere? > > There may be a problem with the test that is done to detect IEEE-754. > > The way it's done is the following: I encoded an array of floating point > values that, when compiled in the executable, build up an ASCII string. > The Configure test then looks up the string in the .o file to determine > that IEEE-754 is used, and whether it's little or big-endian. > > However, this assumes the "float" type encodes values on 4 bytes. > Is this the case with your CPU architecture and compiler? If the "float" > C type is encoded on more than 4 bytes, then the check will indeed fail. > > If you can tell me how large your "float" and "double" types are on your > machine, that would help. > > This simple C program will do the trick: > > ------------ > #include <stdio.h> > > main() > { > printf("sizeof(float) = %u\n", sizeof(float)); > printf("sizeof(double) = %u\n", sizeof(double)); > return 0; > } > ------------ > > If you can stuff that in a "bar.c" file, then type "make bar" and > then "./bar", please send me the output... > > Thanks, > Raphael > > Hello Raphael, This is the results that I get: % make bar cc -o bar bar.c "bar.c", line 4: warning: old-style declaration or incorrect type for: main % ./bar sizeof(float) = 4 sizeof(double) = 8 Thanks, Jake |