This is the mail archive of the gsl-discuss@sources.redhat.com mailing list for the GSL project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

IRIX installation problems


Hi all!
I've been trying to compile GSL 1.2 on my IRIX 6.5 for the las two days.
Step after step, I managed to correct some mistakes the configure script
made.
My compiler is MipsProC++ 7.3, and it seems that the INSTALL file deserves
some clarifications concerning this compiler.
Here are the remarks I can make so far:
1/ There are problems with enums. For example, I had problems with fp_rnd.
typedef	enum	fp_rnd {
    FP_RN = 0,	/* round to nearest representable number, tie -> even */
    FP_RZ = 1,	/* round toward zero (truncate)			      */
    FP_RP = 2,  /* round toward plus infinity                         */
    FP_RM = 3   /* round toward minus infinity                        */
    } fp_rnd;

fp_rnd	aVariable = 0; // not accepted by MipProC++ 7.3
fp_rnd	aVariable = FP_RN; // not accepted by MipProC++ 7.3

2/ Configure defined the "const" as "". I don't know why it did not
recognize const, but I changed it in the config.h to #define const const and
it worked.

3/ Configure did not find that I has stdc headers in /usr/include. I had to
set HAVE_STDC_HEADERS manually in config.h.

4/ The compiler doesn't convert const void* to cont float* (it's an
example). I had to edit a source file to make the cast explicit.

5/ the files in utils/ have old C style function declaration, that the
compiler doesn't understand by default. You have to give the -anach options
to CC. I think it should be specified in the INSTALL file.



Now I have another cast problem that I didn't manage to resolve.
Here are some extracts from my make log:
============================================================================
===
cc-1282 CC: ERROR File = poly.c, Line = 143
  More than one instance of overloaded function "pow" matches the argument
list.

            Function symbol function "pow(double, double)" is ambiguous by
                      inheritance.
            Function symbol function "pow(double, int)" is ambiguous by
                      inheritance.
            The argument types are:  (double, unsigned int).
        sum += state->coeff[i] * (pow (b, i + 1) - pow (a, i + 1)) / (i +
1.0);

============================================================================
===
cc-1282 CC: ERROR File = exp.c, Line = 472
  More than one instance of overloaded function "log" matches the argument
list.

            Function symbol function "log(double)" is ambiguous by
inheritance.
            Function symbol function "log(float)" is ambiguous by
inheritance.
            Function symbol function "log(long double)" is ambiguous by
                      inheritance.
            The argument types are:  (const int).
        lg_N  = lnf_N.val - log(N);       /* log(Gamma(N)) */

As you can see, there are some serious cast problems, and theses occur in
almost every file in specfuncs/
Can someone tell me how to get rid of these?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]