Skip to content

Installation problem on SGI IRIX6.5

5 messages · Xiao Jianfeng, Brian Ripley

#
Hi, all,

I'm a newbie to R. I came across a problem when I tried to install R on
an SGI machine which is running IRIX64 6.5.

I have successfully run configure, but when I tried to run "make"(or
"gmake"), errors came out. Following is the error message.

Does someone has experiences in the R's installation on IRIX ? Any hints
will be greatly appreciated !

Thanks in advance!


Error Message:
------------------------------------------------------------------------

cc -I../../src/extra/zlib -I../../src/extra/bzip2 -I../../src/extra/pcre
  -I. -I../../src/include -I../../src/include
-I/user_data2/jfxiao/local/include -DHAVE_CONFIG_H -OPT:IEEE_NaN_inf=ON
  -g -c character.c -o character.o
cc-1185 cc: WARNING File = character.c, Line = 714
   An enumerated type is mixed with another type.

             warn = warn | !utf8strIsASCII(CHAR(STRING_ELT(CAR(args), i)));
                  ^

cc-1552 cc: WARNING File = character.c, Line = 698
   The variable "uclass" is set but never used.

       int i, len, minlen, uclass;
                           ^

cc-1020 cc: ERROR File = character.c, Line = 1300
   The identifier "wctrans_t" is undefined.

         wctrans_t tr = wctrans(ul ? "toupper" : "tolower");
         ^

cc-1185 cc: WARNING File = character.c, Line = 1733
   An enumerated type is mixed with another type.

         Rboolean warn = !utf8strIsASCII(CHAR(STRING_ELT(pat, 0)));
                         ^

cc-1185 cc: WARNING File = character.c, Line = 1926
   An enumerated type is mixed with another type.

       useRaw = strcmp(CHAR(STRING_ELT(stype, 0)), "integer");
              ^

1 error detected in the compilation of "character.c".
gmake[3]: *** [character.o] Error 2
gmake[3]: Leaving directory
`/user_data2/jfxiao/local/source/R/R-2.1.1/src/main'
gmake[2]: *** [R] Error 2
gmake[2]: Leaving directory
`/user_data2/jfxiao/local/source/R/R-2.1.1/src/main'
gmake[1]: *** [R] Error 1
gmake[1]: Leaving directory `/user_data2/jfxiao/local/source/R/R-2.1.1/src'
gmake: *** [R] Error 1
#
fdu.xiaojf at gamil.com wrote:

            
I think the problem is here.

    In the GNU C Library, "wctrans_t" is defined in "wctype.h", but on
my system,
    "wctrans_t" is not defined in /usr/include/wctype.h

    Does anybody has successfully installed R 2.1.1 on IRIX 6.5 ? I have
spent all
    day surfing on the net but find no helpful information.

    Thanks again !
#
Please do try reading the R-admin manual (as the INSTALL file asks you to: 
it does not ask you to `surf on the net').

The following section may help you:

   To enable UTF-8 support, configure with default @option{--enable-mbcs}.
   This will check for a large number of features, notably support for the
   C99/UNIX98 wide character functions and for UTF-8 or MBCS support in
   X11.  If enough of these are found, @code{MBCS} will be listed as one
   of the ``Additional capabilities''

so try --disable-mbcs if your OS has broken header files.  (It apparently 
does have wctrans, but not the type it returns.)

Now we know of the existence of such an OS, we can add a check.  Are 
wctrans and wctrans_t defined anywhere else?
On Fri, 5 Aug 2005, Xiao Jianfeng wrote:

            

  
    
1 day later
#
Prof Brian Ripley wrote:

            
Thanks a lot !

I have read the R-admin manual before turn to the internet,
but I didn't read it carefully. Sorry about that.
Yes, it does help.

Now I used the following command to configure according page 28(*B.7.5 
IRIX*):

"
env CC=cc F77=f77 CXX=CC CPPFLAGS="-I/user_data2/jfxiao/local/include 
-I/usr/freeware/include" LDFLAGS="-L/user_data2/jfxiao/local/lib 
-L/usr/freeware/lib32" CFLAGS="-O2" FFLAGS="-O2" CXXFLAGS="-O2" 
./configure --prefix=/user_data2/jfxiao/local --disable-mbcs 
--disable-nls MAKE=gmake
"

This command ran successfully, and get the following output:

"
R is now configured for mips-sgi-irix6.5

Source directory: .
Installation directory: /user_data2/jfxiao/local

C compiler: cc -OPT:IEEE_NaN_inf=ON -O2
C++ compiler: CC -OPT:IEEE_NaN_inf=ON -O2
Fortran compiler: f77 -OPT:IEEE_NaN_inf=ON -O2

Interfaces supported: X11
External libraries: readline, BLAS(generic)
Additional capabilities:
Options enabled: R profiling

Recommended packages: yes

configure: WARNING: you cannot build DVI versions of the R manuals
configure: WARNING: you cannot build info or html versions of the R manuals
configure: WARNING: you cannot build PDF versions of the R manuals
"

Then I ran `gmake` to make, but it fails.
I got the following error message:
"
cc -I../../src/extra/zlib -I../../src/extra/bzip2 -I../../src/extra/pcre 
-I. -I../../src/include -I../../src/include 
-I/user_data2/jfxiao/local/include -I/usr/freeware/include 
-DHAVE_CONFIG_H -OPT:IEEE_NaN_inf=ON -O2 -c errors.c -o errors.o
cc-1185 cc: WARNING File = errors.c, Line = 266
An enumerated type is mixed with another type.

dcall = CHAR(STRING_ELT(deparse1(call, 0, SIMPLEDEPARSE), 0));
^

*cc-1515 cc: ERROR File = errors.c, Line = 357
A value of type "int" cannot be assigned to an entity of type "char *".

header = ngettext("Warning message:\n", "Warning messages:\n",
^*

......
......
......

1 error detected in the compilation of "errors.c".
gmake[3]: *** [errors.o] Error 2
gmake[3]: Leaving directory 
`/user_data2/jfxiao/local/source/R/R-2.1.1/src/main'
gmake[2]: *** [R] Error 2
gmake[2]: Leaving directory 
`/user_data2/jfxiao/local/source/R/R-2.1.1/src/main'
gmake[1]: *** [R] Error 1
gmake[1]: Leaving directory `/user_data2/jfxiao/local/source/R/R-2.1.1/src'
gmake: *** [R] Error 1
"

It's strange since the return value of ngettext() do have a value type 
of "char *".

Can somebody tell me why ?
I've run `grep "wctrans_t" */* ` in "/usr/include? but get nothing.



I've also tried to complie with gcc.

Acoording the instruction on page 28(*B.7.5 IRIX*), I used the following
command to configure:
"
env F77=f77 FFLAGS="-O2" CPPFLAGS="-I/user_data2/jfxiao/local/include 
-I/usr/freeware/include" LDFLAGS="-L/user_data2/jfxiao/local/lib 
-L/usr/freeware/lib32" ./configure --prefix=/user_data2/jfxiao/local 
--disable-mbcs --disable-nls MAKE=gmake
"
(Note that I have to specify F77=f77 or the configure step will fail.)

The command run without problem and gave out the success message:
"

R is now configured for mips-sgi-irix6.5

Source directory: .
Installation directory: /user_data2/jfxiao/local

C compiler: gcc -g -O2
C++ compiler: g++ -g -O2
Fortran compiler: f77 -OPT:IEEE_NaN_inf=ON -O2

Interfaces supported: X11
External libraries: readline, BLAS(generic)
Additional capabilities:
Options enabled: R profiling

Recommended packages: yes

configure: WARNING: you cannot build DVI versions of the R manuals
configure: WARNING: you cannot build info or html versions of the R manuals
configure: WARNING: you cannot build PDF versions of the R manuals

"

Then I ran `gmake` to compile, but it failed again.
Next is the last part of the output:

"
....

f77 -OPT:IEEE_NaN_inf=ON -O2 -c xxxpr.f -o xxxpr.o
gcc -L/user_data2/jfxiao/local/lib -L/usr/freeware/lib32 -o R.bin 
Rmain.o CConverters.o CommandLineArgs.o Rdynload.o Renviron.o RNG.o 
apply.o arithmetic.o apse.o array.o attrib.o base.o bind.o builtin.o 
character.o coerce.o colors.o complex.o connections.o context.o cov.o 
cum.o dcf.o datetime.o debug.o deparse.o deriv.o dotcode.o dounzip.o 
dstruct.o duplicate.o engine.o envir.o errors.o eval.o format.o 
fourier.o gevents.o gram.o gram-ex.o graphics.o identical.o internet.o 
iosupport.o lapack.o list.o logic.o main.o mapply.o match.o memory.o 
model.o names.o objects.o optim.o optimize.o options.o par.o paste.o 
pcre.o platform.o plot.o plot3d.o plotmath.o print.o printarray.o 
printvector.o printutils.o qsort.o random.o regex.o registration.o 
relop.o saveload.o scan.o seq.o serialize.o size.o sort.o source.o 
split.o sprintf.o startup.o subassign.o subscript.o subset.o summary.o 
sysutils.o unique.o util.o version.o vfonts.o xxxpr.o ../unix/libunix.a 
../appl/libappl.a ../nmath/libnmath.a -lblas -L/usr/lib32/mips4/r10000 
-L/usr/lib32/mips4 -lftn -lm ../extra/zlib/libz.a 
../extra/bzip2/libbz2.a ../extra/pcre/libpcre.a -lreadline -ldl -lm
ld32: WARNING 84 : /usr/lib32/libdl.so is not used for resolving any symbol.
ld32: ERROR 33 : Unresolved text symbol "ngettext" -- 1st referenced by 
errors.o.
Use linker option -v to see when and which objects, archives and dsos 
are loaded.
ld32: INFO 152: Output file removed because of error.
collect2: ld returned 2 exit status
gmake[3]: *** [R.bin] Error 1
gmake[3]: Leaving directory 
`/user_data2/jfxiao/local/source/R/R-2.1.1/src/main'
gmake[2]: *** [R] Error 2
gmake[2]: Leaving directory 
`/user_data2/jfxiao/local/source/R/R-2.1.1/src/main'
gmake[1]: *** [R] Error 1
gmake[1]: Leaving directory `/user_data2/jfxiao/local/source/R/R-2.1.1/src'
gmake: *** [R] Error 1
"

I have read the manual again and ased some people in our lab, but get no 
helpful information.

I'm not familiar about compilation in Unix, so I come here to bother again.

Thanks again for any help !
#
You have a large number of non-IRIX paths in your configure. That is 
almost certainly your problem: other people _have_ successfully built R 
2.1.x on IRIX 6.5.  In particular, you seem to have a broken version of 
gettext in your non-IRIX directories which is not declaring ngettext.

If you cannot use a less eclectic collection of software, run
configure --help and see how to use the provided gettext (probably via
--with-included-gettext).  Or use --disable-nls.
On Sun, 7 Aug 2005, Xiao Jianfeng wrote: