Ruby fails to install on a Cray SV1

Believe it or not, I would like to install ruby on a Cray SV1.

However, the compilation is failing for 1.6.7 using Cray’s cc
compiler,

      cc -g -I. -I. -I/u/kleb/local/include -c dir.c

CC-20 cc: ERROR File = dir.c, Line = 433
The identifier “MAXPATHLEN” is undefined.

    int size = MAXPATHLEN;

Where to I go from here? (Short of trying to compile gcc too.)

There are also a bunch of compilation warnings for bignum.c, e.g.,

CC-63 cc: WARNING File = bignum.c, Line = 1317
The indicated shift count is too large.

      num = BIGUP(xds[i]);
            ^

Total warnings detected in bignum.c: 61

Regards,

···


Bil Kleb
NASA Langley Research Center
Hampton, Virginia, USA

Bil Kleb wrote:

Believe it or not, I would like to install ruby on a Cray SV1.

However, the compilation is failing for 1.6.7 using Cray’s cc
compiler,

      cc -g -I. -I. -I/u/kleb/local/include -c dir.c

CC-20 cc: ERROR File = dir.c, Line = 433
The identifier “MAXPATHLEN” is undefined.

    int size = MAXPATHLEN;

Where to I go from here? (Short of trying to compile gcc too.)

I thought someone already answered this, but here it goes:

Edit dir.c and add this line somewhere near the top:

#ifndef MAXPATHLEN
#define MAXPATHLEN 256
#endif

There are also a bunch of compilation warnings for bignum.c, e.g.,

CC-63 cc: WARNING File = bignum.c, Line = 1317
The indicated shift count is too large.

      num = BIGUP(xds[i]);
            ^

Total warnings detected in bignum.c: 61

That one is beyond me - sorry.

Regards,

Dan

PS - If you’re willing to provide me with a login/passwd, I’ll port my
various “Sys” modules to the Cray platform. Then, I could brag to all
my friends… :slight_smile:

Daniel Berger wrote:

I thought someone already answered this, but here it goes:

Edit dir.c and add this line somewhere near the top:

#ifndef MAXPATHLEN
#define MAXPATHLEN 256
#endif

Done. I also had to do it with dln.c and file.c. Now it gives a
bunch of other warnings and then an error in gc.c,

     cc -g -I. -I. -I/u/kleb/local/include -c gc.c

[…]
CC-167 cc: ERROR File = gc.c, Line = 879
Argument of type “VALUE” is incompatible with parameter of type “void *”.

         RUBY_CRITICAL(free(RANY(obj)->as.node.u1.value));
···


Bil Kleb
NASA Langley Research Center
Hampton, Virginia, USA

Hi,

···

In message “Re: ruby fails to install on a Cray SV1” on 02/10/30, Bil Kleb W.L.Kleb@larc.nasa.gov writes:

Done. I also had to do it with dln.c and file.c. Now it gives a
bunch of other warnings and then an error in gc.c,

    cc -g -I. -I. -I/u/kleb/local/include -c gc.c

[…]
CC-167 cc: ERROR File = gc.c, Line = 879
Argument of type “VALUE” is incompatible with parameter of type “void *”.

        RUBY_CRITICAL(free(RANY(obj)->as.node.u1.value));

Can you show me your “config.h”?

						matz.